Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Isih Data Dalam Kumpulan dalam Pandas DataFrames?
Isih Dalam Kumpulan dalam panda
Apabila bekerja dengan bingkai data panda, selalunya perlu untuk mengumpulkan data mengikut lajur tertentu dan kemudian melakukan operasi tambahan dalam kumpulan tersebut. Satu keperluan biasa ialah mengisih data terkumpul berdasarkan kriteria tertentu.
Untuk mencapai ini, fungsi kumpulan mengikut boleh dirantai dengan fungsi sort_values. Sebagai contoh, pertimbangkan df bingkai data yang mempunyai kiraan lajur, tugas dan sumber.
In [167]: df Out[167]: count job source 0 2 sales A 1 4 sales B 2 6 sales C 3 3 sales D 4 7 sales E 5 5 market A 6 3 market B 7 2 market C 8 4 market D 9 1 market E
Jika anda ingin mengumpulkan data mengikut tugas dan sumber dan kemudian mengisih hasil agregat mengikut kiraan dalam tertib menurun, anda boleh melakukan perkara berikut:
In [168]: df.groupby(['job','source']).agg({'count':sum})
Ini akan mencipta kerangka data baharu yang mengandungi nilai kiraan agregat untuk setiap kumpulan. Walau bagaimanapun, bingkai data yang terhasil tidak akan diisih mengikut kiraan. Untuk mengisih bingkai data, anda boleh menggunakan fungsi sort_values:
In [34]: df.sort_values(['job','count'],ascending=False)
Ini akan mengisih bingkai data mengikut kerja dahulu dan kemudian mengikut kiraan dalam tertib menurun. Bingkai data yang terhasil akan kelihatan seperti ini:
Out[35]: count job source 4 7 sales E 2 6 sales C 1 4 sales B 5 5 market A 8 4 market D 6 3 market B
Untuk mengambil tiga baris teratas setiap kumpulan, anda boleh menggunakan fungsi kepala:
In [34]: df.sort_values(['job','count'],ascending=False).groupby('job').head(3)
Ini akan menghasilkan bingkai data baharu yang mengandungi tiga baris teratas setiap kumpulan, diisih mengikut kiraan dalam tertib menurun.
Out[35]: count job source 4 7 sales E 2 6 sales C 1 4 sales B 5 5 market A 8 4 market D 6 3 market B
Atas ialah kandungan terperinci Bagaimana untuk Isih Data Dalam Kumpulan dalam Pandas DataFrames?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!