我有一个包含约100列的数据框。我想将前29列中的值合并到一个列表中。因此,应在每一行包含值列表的地方创建一个新列。诀窍在于,前29列中经常有空单元格,因此有时列表将包含5个元素,有时7个元素,20个元素,等等。
虚拟数据框示例:
one = c(2.34, 3.345, 5.345)
two = c(2354.2, 5234.23, 43)
three = c(2643, 434.34, 5.345)
df = data.frame(one, two , three)
所需变量:
([2.34, 2354.2, 2643], [3.345, 5234.23, 434.340], [5.345, 43.00, 5.345])
答案 0 :(得分:0)
lapply(1:nrow(df), function(x) unname(df[x, ]))
# [[1]]
#
# 1 2.34 2354.2 2643
#
# [[2]]
#
# 2 3.345 5234.23 434.34
#
# [[3]]
#
# 3 5.345 43 5.345