我有问题。我有一个像这样结构的数据框
X a b c d
g 0.2 0.4 0.6 0.2
h 0.3 0.8 0 0.4
我想创建一个新矩阵,包含我的数据库的所有行以及值大于0.5的列,如下所示
X b c
g / 0.6
h 0.8 /
答案 0 :(得分:1)
我们创建一个逻辑矩阵(df1[-1] > 0.5
),获取colSums
,检查它是否大于0,根据逻辑vector
df2 <- df1[c(TRUE, colSums(df1[-1] > 0.5)>0)]
并将值&lt; = 0.5分配给NA
df2[-1][df2[-1] <= 0.5] <- NA