如何删除列满足数据框中某些条件的行

时间:2013-04-02 01:16:27

标签: r dataframe

我有一个看起来像这样的数据框

df <- data.frame(cbind(1:10, sample(c(1:5), 10, replace=TRUE)))
# in real case the columns could be more than two
# and the column name could be anything.

我想要做的是删除所有列的值的所有行 小于5。 有什么办法呢?

2 个答案:

答案 0 :(得分:3)

df[!apply(df,1,function(x)all(x<5)),]

答案 1 :(得分:1)

首先......请停止使用cbind创建data.frames。如果你继续,你会很抱歉。 R会惩罚你。

df[ !rowSums(df <5) == length(df), ]

(length()函数返回数据帧中的列数。)