我有一個很大的數據框(總共超過8,500,000個單元格),我需要根據特定列中的值創建此數據框的某些子集。是否可以爲主數據框的列中的每個值創建數據幀的子集?
我知道我可以手工創建子集,並且在只有少數值的情況下很高興做到這一點。目前,我得到的唯一值:
table(df$ColumnX)
,然後從那裏建立個人dataframes因爲只有幾個值:
df.subset1 <- df[df$ColumnX == "Subset1", ]
df.subset2 <- df[df$ColumnX == "Subset2", ]
...
df.subsetX <- df[df$ColumnX == "SubsetX", ]
但是,當有顯著更獨特的價值觀是我在哪裏看到一個問題,這將需要我的計算機的處理能力,以及時實現我的目標。
我想知道的是如果這個過程可以自動化。
像這樣的東西是什麼,我希望能實現:
- List values in Column X
- Create a new dataframe/subset for each value in Column X
或者:
for(all unique values in Column X)
create a new dataframe
end for
因此,我有這樣的事情的基礎上ColumnX
值:
df.subset1
df.subset2
...
df.subsetX
只需使用'split'即'dflist < - 斯普利特(DF,DF $ ColumnX)'。這會給你一個data.frames列表我看到的 –
。我該如何從列表中提取data.frames? – MusTheDataGuy
如果你以'x < - split(iris,iris $ Species)'爲例,你可以使用'x $ setosa'或'x [[1]]或者x [[「setosa 「]]' –