拆分大型Pandas 資料幀
在Pandas 中處理大型資料集時,通常需要將資料幀拆分為較小的塊進行處理或分配。但是,如果陣列無法均分,直接使用 np.split 可能會導致錯誤。
使用 np.array_split
np.array_split 函數提供了更多將陣列(包括資料幀)拆分為多個部分的靈活方法。與 np.split 不同,它允許部分的數量為不均勻劃分軸的整數。
考慮以下範例,其中包含包含423244 行的資料幀,我們希望將其分為4 組:
<code class="python">In [1]: import pandas as pd In [2]: df = pd.DataFrame({ 'A': ['foo', 'bar', 'foo', 'bar'], 'B': ['one', 'one', 'two', 'three'], 'C': np.array([rand() for i in range(4)]), 'D': np.array([rand() for i in range(4)]) }) In [3]: print(df)</code>
要使用np.array_split 將資料幀分成4 組,我們將可以:
<code class="python">In [4]: import numpy as np In [5]: sections = np.array_split(df, 4)</code>
sections 變數現在包含4 個資料幀的列表,每個資料幀包含大約105811 行。
處理大型資料幀時,考慮不同分割方法的計算成本和記憶體需求非常重要。 np.array_split 提供了一種通用且高效的解決方案,用於將數組劃分為不相等的部分。
以上是如何有效地將大型 Pandas DataFrame 分割為不相等的部分?的詳細內容。更多資訊請關注PHP中文網其他相關文章!