R,使用来自另一个列表的数据构造data.frame列

时间:2016-11-01 12:17:02

标签: r list dataframe

给出一个列表x:

$a
[1] 1 2 3 4 5 6
$b
[1] 10 20 30 40 50
$c
[1] 100 200 300 400 500

我想构建一个包含一列包含以下值的数据框:

1 10 100

即列的元素来自x $ a,x $ b和x $ c中的第一个元素。

我想知道构建此列的最有效方法是什么?

2 个答案:

答案 0 :(得分:0)

我们可以使用[来提取第一个元素

d1 <- data.frame(Col1 = unname(sapply(x, `[`, 1)))
d1
#   Col1
#1    1
#2   10
#3  100

我们也可以

data.frame(Col1 = do.call(cbind, x)[1,])

答案 1 :(得分:0)

你也可以试试这个:

data.frame(Col1=do.call(rbind, x)[,1])
  Col1
a    1
b   10
c  100