將大型Pandas 資料幀拆分為多個部分
在處理大量資料集時,通常有必要將它們拆分為更小的、可管理的區塊。這可以提高效能、增強記憶體使用並促進並行處理。在本文中,我們將解決在嘗試使用 np.split() 拆分大型 pandas 資料幀時遇到的問題。
理解問題
提供的程式碼片段使用 np.split() 將資料幀分割為四個子群組。然而,由於不等除法,它導致了 ValueError 。當資料框中的元素數量不能被所需的分割數量整除時,就會出現此錯誤。
解決方案:使用np.array_split()
來克服為了應對這一挑戰,我們採用了np.array_split(),它是np.split( ) 的更通用的替代方案。正如其文件所述, array_split() 允許非等分,使其適合像我們這樣的情況。
實作
這是一個使用 np.split() 的 Python 程式碼範例。 array_split() 將資料幀分成四個部分:
<code class="python">import pandas as pd import numpy as np # Create a sample dataframe df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'], 'C': np.random.randn(8), 'D': np.random.randn(8)}) # Split the dataframe into four groups using array_split groups = np.array_split(df, 3) # Print the split groups for group in groups: print(group)</code>
這將有效地將資料幀分成三個大致相等大小的群組。每個組別都可以獨立存取和處理,解決了不平等劃分的初始挑戰。
以上是當行數不可整除時,如何將大型 Pandas 資料框拆分為多個部分?的詳細內容。更多資訊請關注PHP中文網其他相關文章!