如何根据具体条件获取data.table列的名称?

时间:2017-01-10 20:39:27

标签: r parallel-processing data.table

我有一个data.table对象resultList,其中包含名为"V1:V128"的列和一些行。我想获得满足

等条件的那些列的名称
lapply(.SD, mean) < a

我试着这样做:

names(resultList[, lapply(.SD, mean) < 0])

但我没有效果。什么代码实现了这一点?

第二个问题 - parLapply是否可以使用lapply代替data.table(例如,使用parLapply(cl, .SD, mean)代替lapply(.SD, mean))?

1 个答案:

答案 0 :(得分:4)

要获得平均值小于某个特定值的列的名称,您可以这样做:

data.table

或者更多的colnames(dt)[dt[, lapply(.SD, mean) < 10]] ## [1] "a" 方法是

A      B
Apple  13
Grape  5
Orange 16  

另请参阅data.table&#39; s http://code.google.com/apis/earth/documentation/balloons.html#getballoonhtmlunsafe