Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengalih keluar Pendua dalam Lajur A Sambil Mengekalkan Baris dengan Nilai Tertinggi dalam Lajur B?
Mengekalkan Baris dengan Nilai B Tertinggi Apabila Mengalih Keluar Pendua dalam Lajur A
Tugas di tangan melibatkan mengalih keluar nilai pendua dalam lajur A bingkai data sambil mengekalkan baris dengan nilai tertinggi dalam lajur B. Untuk mencapai ini, kita boleh menggunakan fungsi terbina dalam dalam pustaka Pandas Python.
Satu pendekatan melibatkan mengisih kerangka data mengikut lajur A dan kemudian membuang pendua sambil mengekalkan kejadian terakhir. Ini dinyatakan di bawah:
df.sort_values(by='A').drop_duplicates(subset='A', keep='last')
Sebagai alternatif, penyelesaian yang lebih fleksibel yang boleh mengambil kira kriteria yang berbeza ialah mengumpulkan bingkai data mengikut lajur A. Dalam setiap kumpulan, baris dengan nilai maksimum dalam lajur B boleh diekstrak. Ini boleh dicapai menggunakan kod berikut:
df.groupby('A', group_keys=False).apply(lambda x: x.loc[x.B.idxmax()])
Dengan melaksanakan salah satu daripada kaedah ini, anda boleh menghapuskan nilai pendua dalam lajur A dengan berkesan sambil memastikan baris dengan nilai B tertinggi dikekalkan.
Atas ialah kandungan terperinci Bagaimana untuk Mengalih keluar Pendua dalam Lajur A Sambil Mengekalkan Baris dengan Nilai Tertinggi dalam Lajur B?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!