在向量中为向量中的每个元素创建行

时间:2018-12-05 19:54:41

标签: r dataframe vector

我有一个数字向量:

arrays

在我已经存在的数据框中(通过下面的dput包含头),我想创建一个新变量。新变量的每一行将包含向量中的单个元素。因此,新变量的每一行中都会有一个值(例如54)。

pickBy

1 个答案:

答案 0 :(得分:1)

使用数据框时,每个变量(列)的条目数与行数一样多。然后,您所描述的不是数据框架,如果我理解您的问题正确,那么您可以做的最好的就是回到常规列表:

df <- data.frame(a = 1:3, b = 1:3)
c(as.list(df), c = list(a))
# $a
# [1] 1 2 3
#
# $b
# [1] 1 2 3
#
# $c
# [1]      54     456   23432    4868      34  245634      37   46453 1342354

还有一个数据框,另一个选择是用NA填充所有较短的列:

library(rowr)
cbind.fill(df, a, fill = NA)
#    a  b  object
# 1  1  1      54
# 2  2  2     456
# 3  3  3   23432
# 4 NA NA    4868
# 5 NA NA      34
# 6 NA NA  245634
# 7 NA NA      37
# 8 NA NA   46453
# 9 NA NA 1342354