data.table
文档说这个,请参阅?CJ
:
x = c(1,1,2)
y = c(4,6,4)
CJ(x,y)#输出列自动命名为'x'和'y'
但是,当我运行该示例时,它似乎没有被保留
x = c(1,1,2)
y = c(4,6,4)
CJ(x, y)
V1 V2
1: 1 4
2: 1 4
3: 1 4
4: 1 4
5: 1 6
6: 1 6
7: 2 4
8: 2 4
9: 2 6
保留的名称未在帮助文件?CJ
的主体中提及,即在“详细信息”或“值”部分中。但是,似乎提到名称在帮助文件的示例部分中保留为注释(看起来这就是您获得示例的位置)。
在CJ
函数中挖掘,似乎完全在R中实现,在结尾附近有一个块,
if (getOption("datatable.CJ.names", FALSE))
vnames = name_dots(...)$vnames
使用getOption("datatable.CJ.names", FALSE)
版本1.12.0运行data.table
返回FALSE。当我们将其设置为TRUE时
options("datatable.CJ.names"=TRUE)
那么代码
x = c(1,1,2)
y = c(4,6,4)
CJ(x, y)
回报
x y
1: 1 4
2: 1 4
3: 1 4
4: 1 4
5: 1 6
6: 1 6
7: 2 4
8: 2 4
9: 2 6
但是,您也可以直接提供名称(帮助文件中未提及)。
CJ(uu=x, vv=y)
返回
uu vv
1: 1 4
2: 1 4
3: 1 4
4: 1 4
5: 1 6
6: 1 6
7: 2 4
8: 2 4
9: 2 6
请注意,这将覆盖上述选项。