Memisahkan DataFrame Berdasarkan Nilai Lajur dalam Panda
Selalunya dalam analisis data, kita menghadapi situasi di mana kita perlu membahagikan DataFrame kepada beberapa DataFrames berdasarkan nilai lajur tertentu. Satu kes sedemikian ialah apabila kita ingin membahagikan DataFrame kepada dua bahagian: satu mengandungi baris dengan nilai di bawah ambang tertentu dan satu lagi mengandungi baris dengan nilai di atas atau sama dengan ambang itu.
Dalam Panda, kita boleh mencapai ini berpecah menggunakan pengindeksan boolean. Begini cara kita boleh mencapai pemisahan ini dengan contoh:
Pertimbangkan DataFrame berikut dengan lajur bernama 'Jualan':
df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print (df) A Sales 0 3 10 1 4 20 2 7 30 3 6 40 4 1 50
Andaikan kita ingin membahagikan DataFrame ini kepada dua berdasarkan Nilai jualan 30:
Memisahkan dengan Perbandingan Langsung:
Kaedah paling mudah ialah menggunakan perbandingan terus dengan pengendali pengindeksan boolean '>=':
<code class="python">s = 30 df1 = df[df['Sales'] >= s] print (df1) A Sales 2 7 30 3 6 40 4 1 50</code>
Ini mencipta DataFrame baharu yang dipanggil df1 yang mengandungi semua baris dengan nilai Jualan lebih besar daripada atau sama dengan 30.
Memisahkan dengan Topeng Songsang:
Untuk mencipta DataFrame dengan baris yang Jualan kurang daripada 30, kita boleh terbalikkan topeng menggunakan ~:
<code class="python">df2 = df[~mask] print (df2) A Sales 0 3 10 1 4 20</code>
Ini mencipta DataFrame baharu dipanggil df2 yang mengandungi semua baris dengan nilai Jualan kurang daripada 30.
Atas ialah kandungan terperinci Bagaimana untuk Memisahkan DataFrame Berdasarkan Nilai Lajur Tertentu dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!