从列表列表开始,比如outcome:
id <- c(1,2,3,4,5,1,2,3,4,5)
month <- c(3,4,2,1,5,7,3,1,8,9)
preds <- c(0.5,0.1,0.15,0.23,0.75,0.6,0.49,0.81,0.37,0.14)
l_1 <- data.frame(id, preds, month)
preds <- c(0.45,0.18,0.35,0.63,0.25,0.63,0.29,0.11,0.17,0.24)
l_2 <- data.frame(id, preds, month)
preds <- c(0.58,0.13,0.55,0.13,0.76,0.3,0.29,0.81,0.27,0.04)
l_3 <- data.frame(id, preds, month)
preds <- c(0.3,0.61,0.18,0.29,0.85,0.76,0.56,0.91,0.48,0.91)
l_4 <- data.frame(id, preds, month)
outcome <- list(l_1, l_2, l_3, l_4)
我的兴趣是获取分配的唯一行值并创建一个新变量,就像我们这样做一样:
sample <- outcome[[1]]
sample$unique_id <- rownames(sample)
然而,我不想手动操作,因为我的列表有100个列表。此外,我不想手动为每行赋值,因为我想保留R生成的行名称。如何才能做到这一点?
4条答案
按热度按时间dnph8jn41#
我们也可以使用
rownames_to_column
xzabzqsa2#
使用
lapply
和cbind
:8qgya5xd3#
另一个基本R选项是使用
Map
dgiusagp4#
尝试使用
lapply