4

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

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

我不想按名称引用每一列,因为它们有很多。na.omit并且complete.cases不会'在这里做伎俩。

一种方法是运行:

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

这很丑陋。有没有更好的办法?

4

1 回答 1

7

怎么样:

d[is.finite(rowSums(d)), ]
于 2013-09-18T18:36:21.653 回答