Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.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 - Fatal编程技术网

R 列表的命名列表

R 列表的命名列表,r,R,我有一个结构列表: [[1]] [[1]][[1]] vector a [[1]][[2]] vector b [[1]][[3]] vector c [[1]][[4]] vector d 我想将其重命名为: [["main name"]] [["subname 1"]][[1]] vector a [["subname 1"]][[2]] vector b [["subname 2"]][[1]] vector c [["subname 2"]][[2]] vector d 我不

我有一个结构列表:

[[1]]
[[1]][[1]]
vector a

[[1]][[2]]
vector b

[[1]][[3]]
vector c

[[1]][[4]]
vector d
我想将其重命名为:

[["main name"]]
[["subname 1"]][[1]]
vector a
[["subname 1"]][[2]]
vector b

[["subname 2"]][[1]]
vector c
[["subname 2"]][[2]]
vector d
我不知道这是否可行,或者我是否需要不同的数据结构。
请给我一些建议。

您可以使用
名称
在列表中分配和获取名称(请参见
?名称

例如,如果我制作了一个类似于您的列表的列表(我注意到您示例中第一个列表的结构不等于第二个列表的结构-您的第二个列表似乎嵌套了三层,而第一个列表嵌套了两层):

现在,如果您执行
myList[['main name'][['submname 1']]
,您将得到
“向量a”

注意-我建议您不要在名称中使用空格,因为这样您就不能使用语法sugar
myList$column\u name

例如(这个列表的结构更像你问题中的第二个,再举一个例子):


myList您可以使用
名称
在列表中分配和获取名称(请参见
?名称

例如,如果我制作了一个类似于您的列表的列表(我注意到您示例中第一个列表的结构不等于第二个列表的结构-您的第二个列表似乎嵌套了三层,而第一个列表嵌套了两层):

现在,如果您执行
myList[['main name'][['submname 1']]
,您将得到
“向量a”

注意-我建议您不要在名称中使用空格,因为这样您就不能使用语法sugar
myList$column\u name

例如(这个列表的结构更像你问题中的第二个,再举一个例子):


myList
myList
myList这是什么?你用什么来完成它?你在用什么语言?请用其他详细信息重新表述您的问题。@smit-它被标记为
r
-我猜语言是
r
是的,语言是r,因为它被标记了。这是什么?你用什么来完成它?你在用什么语言?请用其他详细信息重新表述您的问题。@smit-它被标记为
r
-我猜语言是
r
是的,语言是r,因为它被标记了。
myList <- list( list('vector a', 'vector b', 'vector c', 'vector d') )
# > myList
# [[1]]
# [[1]][[1]]
# [1] "vector a"
# 
# [[1]][[2]]
# [1] "vector b"
# 
# [[1]][[3]]
# [1] "vector c"
# 
# [[1]][[4]]
# [1] "vector d"
names(myList) <- c('main name')
names(myList[['main name']]) <- c('subname 1', 'subname 2', 'subname 3', 'subname 4')
myList <- list( list('a', 'b'), list('c', 'd') )
names(myList) <- c('subname_1', 'subname_2')
myList$subname_1
# list('a', 'b')
# we can do list names one level deeper too if you like
names(myList$subname_1) <- c('a', 'b')
myList$subname_1$a
# 'a'
myList <- list( subname_1=list(a='a', b='b'), subname_2=list(c='c', d='d') )
myList <- list( list('vector a', 'vector b', 'vector c', 'vector d') )
names(myList) <- c('main name')
names(myList)

[1] "main name"

names(myList[['main name']]) <- c('subname 1', 'subname 2', 'subname 3', 'subname 4')

names(myList[['main name']]) 

[1] "subname 1" "subname 2" "subname 3" "subname 4"

myList[['main name']][['submname 1']] #What am I doing wrong here?
NULL

 myList[[1]][[1]]
[1] "vector a"

 myList['main name']
$`main name`
$`main name`$`subname 1`
[1] "vector a"

$`main name`$`subname 2`
[1] "vector b"

$`main name`$`subname 3`
[1] "vector c"

$`main name`$`subname 4`
[1] "vector d"