【问题标题】:R: Subset list of data frames by number of columns?R:按列数列出的数据帧的子集列表?
【发布时间】:2016-06-11 20:54:06
【问题描述】:

我在按简单条件(列数)对包含数据框的列表进行子集化时遇到问题。

这是我的数据集:

d1<-data.frame(a=rnorm(5), b=c(rep(2006, times=4),NA), cc=c(1:5))
d2<-data.frame(a=1:5, b=c(2007, 2007, NA, NA, 2007))  

我的清单:

ls1<-list(d1, d2)

我如何从 ls1 中提取恰好包含 3 列的数据帧?

我试过了

lapply(ls1, subset, ncol = 3)

但它不起作用..谢谢!

【问题讨论】:

  • 子集没有 ncol 参数。你不能只是编造论据并期望 R 来解释它们。

标签: r subset lapply


【解决方案1】:
ls1[sapply(ls1,ncol) == 3]

Filter(function(x) ncol(x) == 3, ls1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-20
    • 1970-01-01
    • 2016-11-04
    • 2015-04-19
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多