一次子集数据

时间:2018-12-01 04:59:25

标签: r subset

我正在使用数据集( myData )观察不同类型植物(变量 plant )的水径流(变量 y );数据中有15种植物。我试图多次对数据进行子集处理,以使我拥有15个数据子集,每种植物类型一个。我尝试通过以下循环进行操作:

k = 1
for(i in unique(myData$plant)){
  myData[[k]] = subset(myData, plant = i)
  k = k+1
}

我的目标是拥有这样的数据集,使得 myData1 仅具有来自第一工厂的数据, myData2 仅具有来自第二工厂 myData3 的数据em>仅在第三个数据上,依此类推。我找不到一种方法来命名每个 k 级别的每个数据集(例如,每个数据集的 myDatak ,因此命名将自动针对每个 k )。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您需要从基础R开始?splitsplit将创建一个数据帧列表,每个数据帧包含一个组-

df_by_plants <- split(myData, myData$plant)

names(df_by_plants) <- paste0("myData", seq_along(df_by_plants))