我正在寻找从 R 中的数据框创建列表的列表。
我的数据框看起来像这样:
Name Age
1 John 30
2 Dan 40
3 Charlie 20
...(few thousand rows)...
我正在尝试生成一个列表,其中列表的键是数据框中的名称,每个键/名称都指向一个列表,例如 list(age=30)
最后,我正在寻找类似的东西
> str(list(John=list(age=30),Dan=list(age=40),Charlie=list(age=20),...))
List of 3
$ John :List of 1
..$ age: num 30
$ Dan :List of 1
..$ age: num 40
$ Charlie:List of 1
..$ age: num 20
...
最佳答案
您可以组合 split
、lapply
和 as.list
:
lapply(split(df, df$Name), function(x)as.list(x[-1]))
#$Charlie
#$Charlie$Age
#[1] 20
#$Dan
#$Dan$Age
#[1] 40
#$John
#$John$Age
#[1] 30
关于r - 从 R 中的数据帧创建复杂的列表结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22312623/