Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Membahagikan DataFrame Berdasarkan Nilai Lajur dalam Panda?
Panda: Membahagikan DataFrame Berdasarkan Nilai Lajur
Apabila bekerja dengan Pandas DataFrames, keperluan timbul untuk membahagikan data kepada subset berdasarkan nilai lajur tertentu. Satu senario biasa ialah memisahkan DataFrame berdasarkan nilai ambang. Begini cara ia boleh dicapai:
Mencipta Topeng Boolean
Kaedah paling mudah melibatkan mencipta topeng boolean menggunakan operator perbandingan. Dengan menggunakan topeng pada DataFrame, anda boleh mencipta dua DataFrame dengan data yang memuaskan syarat yang ditetapkan oleh mask.
Contohnya, untuk memisahkan DataFrame dengan lajur bernama 'Jualan' dengan nilai jualan kurang daripada dan lebih besar daripada atau sama dengan ambang 's' yang ditentukan:
<code class="python">import pandas as pd df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print(df) s = 30 # Boolean mask for rows where Sales >= s sales_ge_mask = df['Sales'] >= s # DataFrame with Sales >= s df1 = df[sales_ge_mask] print(df1) # Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)
Anda boleh terbalikkan topeng menggunakan operator "~" untuk memisahkan DataFrame berdasarkan penolakan syarat.
<code class="python"># Boolean mask for rows where Sales < s sales_lt_mask = df['Sales'] < s # DataFrame with Sales >= s df1 = df[~sales_lt_mask] print(df1) # DataFrame with Sales < s df2 = df[sales_lt_mask] print(df2)</code>
Kaedah ini mencipta subset DataFrames dengan cekap berdasarkan keadaan yang disesuaikan.
Atas ialah kandungan terperinci Bagaimana untuk Membahagikan DataFrame Berdasarkan Nilai Lajur dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!