[英]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.