Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 我可以用setkey()获取data.table中数值列的所有行吗?_R_Data.table - Fatal编程技术网

R 我可以用setkey()获取data.table中数值列的所有行吗?

R 我可以用setkey()获取data.table中数值列的所有行吗?,r,data.table,R,Data.table,如果对字符列data.table使用setkey,则返回所有行,例如 DT <- data.table(V1=c(1L,2L), V2=LETTERS[1:3], V3=round(rnorm(4),4), V4=1:12) setkey(DT,V2) DT['A'] = V1 V2 V3 V4 1: 1 A 0.6741 1 2: 2 A 0.5648 4 3: 1 A -1.0006 7 4: 2 A 0.5047 10 DT您可以使

如果对字符列data.table使用setkey,则返回所有行,例如

DT <- data.table(V1=c(1L,2L),
V2=LETTERS[1:3],
V3=round(rnorm(4),4),
V4=1:12)

setkey(DT,V2)

DT['A'] = 
   V1 V2      V3 V4
1:  1  A  0.6741  1
2:  2  A  0.5648  4
3:  1  A -1.0006  7
4:  2  A  0.5047 10
DT您可以使用
J(1)
(1)
,如下所示:

DT[.(1)]
#    V1 V2      V3 V4
# 1:  1  A -0.0780  1
# 2:  1  C  1.0128  3
# 3:  1  B -0.0780  5
# 4:  1  A  1.0128  7
# 5:  1  C -0.0780  9
# 6:  1  B  1.0128 11
DT[J(1)]
#    V1 V2      V3 V4
# 1:  1  A -0.0780  1
# 2:  1  C  1.0128  3
# 3:  1  B -0.0780  5
# 4:  1  A  1.0128  7
# 5:  1  C -0.0780  9
# 6:  1  B  1.0128 11
DT[.(1)]
#    V1 V2      V3 V4
# 1:  1  A -0.0780  1
# 2:  1  C  1.0128  3
# 3:  1  B -0.0780  5
# 4:  1  A  1.0128  7
# 5:  1  C -0.0780  9
# 6:  1  B  1.0128 11
DT[J(1)]
#    V1 V2      V3 V4
# 1:  1  A -0.0780  1
# 2:  1  C  1.0128  3
# 3:  1  B -0.0780  5
# 4:  1  A  1.0128  7
# 5:  1  C -0.0780  9
# 6:  1  B  1.0128 11