Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/80.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.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 为什么数据表列表上的名称向量返回列表类型?_R_Data.table - Fatal编程技术网

R 为什么数据表列表上的名称向量返回列表类型?

R 为什么数据表列表上的名称向量返回列表类型?,r,data.table,R,Data.table,我的一个函数创建了多个data.tables,并将其存储在一个列表中,以便返回这些表以供脚本中的其他地方使用。但是,一旦我从列表中检索到元素,它们就属于list()类型,不再是data.table 如果我改用数值向量,我会得到一个data.table。不确定我在这里遗漏了什么细微差别可以解释这种行为 DT_1 = data.table(col1=rep(c("b","a","c"),each=3), col2=c(1,3,6), col3=1:9) DT_2 = data.table(col1

我的一个函数创建了多个data.tables,并将其存储在一个列表中,以便返回这些表以供脚本中的其他地方使用。但是,一旦我从列表中检索到元素,它们就属于list()类型,不再是data.table

如果我改用数值向量,我会得到一个data.table。不确定我在这里遗漏了什么细微差别可以解释这种行为

DT_1 = data.table(col1=rep(c("b","a","c"),each=3), col2=c(1,3,6), col3=1:9)

DT_2 = data.table(col1=rep(c("baa","abb","cgg"),each=3), col2=c(1,3,6), col3=1:9)

DT_list <- list(table1= DT_1, table2 = DT_2)

dt1_from_list <- DT_list['table1']
dt2_from_list <- DT_list[[1]]

class(dt1_from_list)

# is a list

class(dt2_from_list)

 #is a data.table
DT_1=data.table(col1=rep(c(“b”,“a”,“c”),每个=3),col2=c(1,3,6),col3=1:9)
DT_2=数据表(col1=rep(c(“baa”、“abb”、“cgg”),各=3),col2=c(1,3,6),col3=1:9)

dtu list该
[
仍然是一个
长度
为1的
列表。我们需要
[
来提取
列表的元素

DT_list[['table1'] ]

有关更多信息,请检查
?Extract

aha,现在有意义了。谢谢@akrun!@nth谢谢,您可以从