这涵盖在常见问题解答 1.1、1.2 和 2.17 https://rawgit.com/wiki/Rdatatable/data.table/vignettes/datatable-faq.html.
一些可能性:
DT[, keep, with = FALSE]
DT[, c('V1', 'V3'), with = FALSE]
DT[, c(1, 3), with = FALSE]
DT[, list(V1, V3)]
原因DF[c('V1','V3')]
其工作方式与data.frame
被覆盖在?`[.data.frame`
数据帧可以通过多种模式进行索引。什么时候[
and [[
被使用
具有单个向量索引(x[i]
or x[[i]]
),他们索引数据框
就好像它是一个列表。在这种用法中drop
参数被忽略,带有
警告。
From data.table 1.10.2 https://github.com/Rdatatable/data.table/blob/master/NEWS.md#changes-in-v1102--on-cran-31-jan-2017,您可以使用..
以编程方式对列进行子集化时的前缀:
When j
是一个前缀为的符号..
它将在调用范围中查找,其值被视为列名称或数字[...]它是实验性的。
Thus:
DT[ , ..keep]
# V1 V3
# 1: 1 7
# 2: 2 8
# 3: 3 9