【发布时间】:2025-12-22 00:30:10
【问题描述】:
这是我第一次在这里提问,所以如果我需要改变我这样做的方式,请告诉我。我已经找了一段时间了,但我找不到我需要的东西。
我有一个包含 3 个数据框的列表。它们具有相同的结构(变量),但观察次数不同。我想根据存储在向量中的几个条件,为列表中的每个数据帧获取几个子集。
因此,如果我有 5 个条件,我需要为列表中的 3 个数据帧中的每一个获取这些数据帧的 5 个子集,因此总共 15 个。
例如:
df1 <-data.frame(replicate(3,sample(0:10,10,rep=TRUE)))
df2 <-data.frame(replicate(3,sample(0:10,7,rep=TRUE)))
df3 <-data.frame(replicate(3,sample(0:10,8,rep=TRUE)))
my_list <- list(df1, df2, df3)
conditions <- c(2, 5, 7, 4, 6)
我知道如何使用 lapply 对其中一种条件进行子集化
list_subset <- lapply(my_list, function(x) x[which(x$X1 == conditions[1]), ])
但我想对向量条件中的所有值都这样做。 我希望这是有道理的。
【问题讨论】: