Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah saya boleh mengendalikan DataFrames besar dalam Panda dengan berkesan untuk mengelakkan ralat ingatan?
DataFrame yang besar boleh menjadi mencabar untuk digunakan, terutamanya apabila menghantarnya melalui fungsi. Ralat memori boleh berlaku apabila bekerja dengan DataFrame yang besar, dan menghirisnya kepada bahagian yang lebih kecil boleh membantu mengurangkan isu ini.
Untuk menghiris DataFrame kepada bahagian yang lebih kecil:
<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>
Untuk mengakses bahagian, hanya indeks senarai:
<code class="python">list_df[0] list_df[1] etc...</code>
Dengan memisahkan DataFrame dengan AcctName:
<code class="python">list_df = [] for n, g in df.groupby('AcctName'): list_df.append(g)</code>
Setelah DataFrame dipecahkan menjadi ketulan, ia boleh disalurkan melalui fungsi dan kemudian dipasang semula menjadi satu DataFrame menggunakan pd.concat.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mengendalikan DataFrames besar dalam Panda dengan berkesan untuk mengelakkan ralat ingatan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!