我正在使用数据集( 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 )。
有什么建议吗?
答案 0 :(得分:2)
您需要从基础R开始?split
。split
将创建一个数据帧列表,每个数据帧包含一个组-
df_by_plants <- split(myData, myData$plant)
names(df_by_plants) <- paste0("myData", seq_along(df_by_plants))