【发布时间】:2021-05-21 20:24:38
【问题描述】:
我想提取我的data.table 的特定列a 的非零值。这是一个例子
set.seed(42)
DT <- data.table(
id = c("b","b","b","a","a","c"),
a = sample(c(0,1), 6, replace=TRUE),
b = 7:12,
c = 13:18
)
col <- "a"
如果DT 是data.frame,我可以这样做
x <- DT[,col] # I can do DT[,..col] to translate this line
x[x>0] # here is where I am stuck
由于DT 是data.table,因此此代码失败。错误信息是:“i is invalid type (matrix)”。
我尝试了as.vector(x),但没有成功。
任何提示表示赞赏。这似乎是一个初学者的问题。但是,搜索 SO 和 data.table 的介绍小插曲并没有找到解决方案。
【问题讨论】:
标签: r data.table