Banyak set data mempunyai baris yang mewakili entiti yang berbeza, setiap satu dengan berbilang lajur yang mewakili data tentang entiti tersebut. Kadangkala, ia menjadi perlu untuk mengenal pasti lajur khusus yang mengandungi nilai maksimum untuk setiap baris. Tugasan ini boleh dicapai menggunakan fungsi idxmax().
Dalam contoh yang diberikan, kami mempunyai DataFrame dengan empat lajur: "Komunikasi dan Carian," "Perniagaan," "Umum" dan "Gaya Hidup." Kami ingin membuat lajur baharu, "Maks," yang mengandungi nama lajur yang sepadan dengan nilai maksimum setiap baris.
Untuk melakukan ini, kami boleh menggunakan idxmax(axis=1) untuk mencari indeks lajur dengan nilai maksimum:
df.idxmax(axis=1) # Output: 0 Communications 1 Business 2 Communications 3 Communications 4 Business dtype: object
Ini memberikan kita label lajur, tetapi kita boleh menukarnya kepada nama lajur yang sepadan:
df['Max'] = df.idxmax(axis=1)
DataFrame yang terhasil akan kelihatan seperti ini:
communications and search | business | general | lifestyle | max |
---|---|---|---|---|
0.745763 | 0.050847 | 0.118644 | 0.084746 | Communications |
0.333333 | 0.000000 | 0.583333 | 0.083333 | Business |
0.617021 | 0.042553 | 0.297872 | 0.042553 | Communications |
0.435897 | 0.000000 | 0.410256 | 0.153846 | Communications |
0.358974 | 0.076923 | 0.410256 | 0.153846 | Business |
Perhatikan bahawa idxmax() juga boleh digunakan untuk mencari indeks baris di mana nilai maksimum berlaku dalam setiap lajur, menggunakan df.idxmax() (atau df.idxmax( paksi=0)).
Atas ialah kandungan terperinci Bagaimana untuk Mencari Nama Lajur dengan Nilai Maksimum untuk Setiap Baris dalam DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!