我有一个像这样的数据框(df):
0 5 5 5 5 5
0 5 5 5 0 5
0 5 5 5 NA 5
5 0 0 0 NA 5
我希望依次检查每一列,并计算值大于0的行数。如果值大于0的行数大于3,我想用NA替换该列中的所有值。上面的输出如下所示:
0 5 5 5 5 NA
0 5 5 5 0 NA
0 5 5 5 NA NA
5 0 0 0 NA NA
这就是我试过的
df[,(nrow(df)>0)> 3]<-NA
答案 0 :(得分:1)
这是解决方案:
df[, colSums(df > 0)> 3]<-NA