在data.frame R中仅选择具有有限值的行

时间:2013-09-18 18:33:30

标签: r dataframe apply

想象一下,我有一个data.frame在R中有很多列。我想只选择所有列的行具有有限值的行。

set.seed(123)
d = data.frame(matrix(sample(c(1:10, Inf, -Inf), 100, replace=T), ncol=20))

我不想按名称引用每一列,因为它们有很多。 na.omitcomplete.cases不会在这里做到这一点。

一种方法是运行:

d[apply(apply(d, 2, is.finite), 1, all),]

这太丑了。还有更好的方法吗?

1 个答案:

答案 0 :(得分:7)

怎么样:

d[is.finite(rowSums(d)), ]