R将列表列表转换为数据帧,列表编号为列

时间:2015-07-21 16:11:08

标签: r list

感觉就像一个非常简单的问题,我只是坚持下去。我试图将列表列表分成2列数据​​框,列表编号为列。

示例数据:

d <- list("1" =c("ad","af"), "2" =c("bc","bd","be"))
> d
$`1`
[1] "ad" "af"

$`2`
[1] "bc" "bd" "be"

期望的输出:

ID    Value
1     ad
1     af
2     bc
2     bd
2     be

for循环可以完成这项工作,但我试图避免这种情况。 unlist函数实际上比我更喜欢,因为它在名称中列出了列表名称后跟元素编号:

unlist(d)
  11   12   21   22   23 
"ad" "af" "bc" "bd" "be" 

谢谢!

3 个答案:

答案 0 :(得分:5)

您可以简单地使用:

2015-07-21T12:05:51-0400 1.2.0.RELEASE ERROR task-scheduler-2 step.AbstractStep - Encountered an error executing step loadPublicationRunStep in job MyLoader
java.lang.StackOverflowError: null
    at com.google.gson.internal.$Gson$Types$WildcardTypeImpl.<init>($Gson$Types.java:542) ~[gson-2.2.4.jar:na]
    at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:108) ~[gson-2.2.4.jar:na]
    at com.google.gson.internal.$Gson$Types$WildcardTypeImpl.<init>($Gson$Types.java:549) ~[gson-2.2.4.jar:na]
    at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:108) ~[gson-2.2.4.jar:na]

答案 1 :(得分:0)

快捷方式:

>> D=BFD(J,2)
D =
{
  [1,1] =

     1   3   4

  [2,1] =

     5   6

}

答案 2 :(得分:0)

尝试:

unlist(d, use.names=FALSE)  
"ad" "af" "bc" "bd" "be"