【发布时间】:2016-09-29 05:33:41
【问题描述】:
两个相关问题:
编辑: ps。我正在寻找基于data.table的解决方案。
1.如何为所有列选择超过一定阈值的data.table的行?
2.如何选择data.table的列中包含的值超过一定阈值?
可重现的例子:
library(data.table)
dt <- data.table(V1=1:5, V2=3:7, V3=7:3)
有条件地选择所有行
# this line selects rows based on column `V1`.
dt[ V1 > 2, ]
# I'm looking for a way to select rows based on values of all columns. My failed attempt
dt[ names(dt) > 2, ]
# *expected output*: a data.table with all columns but only with those rows where all values are `> 2`
#> V1 V2 V3
#> 3 5 5
#> 4 6 4
#> 5 7 3
有条件地选择所有列
# My failed attempt
dt[, .SD, .SDcols > 2 ]
# *expected output*: a data.table with all rows but only with those columns where all values are `> 2`
#> V2 V3
#> 3 7
#> 4 6
#> 5 5
#> 6 4
#> 7 3
【问题讨论】:
-
您的预期输出是什么?我不清楚你想要实现什么。
-
我在问题中添加了更多信息。够了吗?
-
谢谢你现在更清楚了:)
标签: r data.table subset