[英]How do I access a member of a list within a data.frame based on a column in the data.frame?
[英]List within a data.frame column
到目前为止,我有以下data.frame
,初始列填充了设定值:
df <- data.frame(N=seq(10, 100, by=10))
现在,我想在这里有第二列,它将是整数list
(或c()
),这样调用df
的 output 如下所示:
N I
1 10 2, 8, 1
2 20 4, 0, 99
.. .. ..
我尝试执行以下操作,其中df <- data.frame(N=seq(10, 100, by=10), I=logical(10))
,它在每一列中放置一个FALSE
。 但是尝试使用df$I[df$N == 10] <- list(2, 8, 1)
测试我想做的事情会引发错误:
要替换的项目数不是替换长度的倍数
编辑:我也尝试使用I(list(...))
将列表解释为原样,但抛出了相同的错误。
我们可以通过在 data.frame 中用I
包装来创建list
,然后通过提取与逻辑向量提供的索引对应的list
元素进行分配
df <- data.frame(N=seq(10, 100, by=10), I= I(vector('list', 10)))
df$I[df$N == 10][[1]] <- list(2, 8, 1)
df
# N I
#1 10 2, 8, 1
#2 20
#3 30
#4 40
#5 50
#6 60
#7 70
#8 80
#9 90
#10 100
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.