Masalah:
Percubaan untuk menghantar bingkai data yang besar melalui fungsi mengakibatkan Ralat Memori, mencadangkan saiz bingkai data adalah berlebihan. Matlamatnya adalah untuk:
Penyelesaian:
Menghiris Mengikut Kiraan Baris
Memisahkan dengan kiraan baris tetap boleh dilakukan menggunakan senarai kefahaman atau array_split daripada numpy:
<code class="python">n = 200000 # Chunk row size list_df = [df[i:i + n] for i in range(0, df.shape[0], n)]</code>
<code class="python">list_df = np.array_split(df, math.ceil(len(df) / n))</code>
Menghiris dengan AcctName
Untuk menghiris mengikut nilai lajur tertentu, seperti AcctName:
<code class="python">list_df = [] for n, g in df.groupby('AcctName'): list_df.append(g)</code>
Penyatuan
Setelah bingkai data besar dihiris, ia boleh dipasang semula menggunakan pd.concat:
<code class="python">consolidated_df = pd.concat(list_df)</code>
Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, masing-masing menyerlahkan aspek penyelesaian yang berbeza: Memberi tumpuan kepada Masalah: * Bagaimana untuk Memproses Bingkai Data Panda Besar Tanpa Ralat Memori? * Ralat Memori dalam Panda:. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!