Penyingkiran Baris Indeks Pendua yang Cekap dalam panda
Dalam panda, nilai indeks pendua boleh timbul daripada pelbagai sumber. Untuk menghapuskan lebihan ini dengan berkesan, adalah penting untuk memahami mekanisme asas dan menggunakan penyelesaian yang paling sesuai untuk senario yang berbeza.
Satu pendekatan biasa ialah menggunakan kaedah drop_duplicates. Walau bagaimanapun, ia boleh mengakibatkan kemerosotan prestasi yang ketara, terutamanya apabila bekerja dengan set data yang besar. Sebagai alternatif, kaedah groupby menawarkan pilihan yang lebih cekap dengan mengumpulkan baris berdasarkan nilai indeksnya dan memilih baris pertama atau terakhir bukan pendua.
Penyelesaian yang paling berkesan, bagaimanapun, adalah menggunakan kaedah pendua secara terus pada Indeks panda. Dengan menyatakan hujah keep sebagai 'pertama', kaedah ini mengembalikan siri boolean yang menunjukkan indeks pendua. Baris dengan nilai pendua kemudiannya boleh ditapis keluar menggunakan pengindeksan Boolean.
Sebagai contoh, pertimbangkan DataFrame berikut:
Sta Precip1hr Precip5min Temp DewPnt WindSpd WindDir AtmPress Date 2001-01-01 00:00:00 KPDX 0 0 4 3 0 0 30.31 2001-01-01 00:05:00 KPDX 0 0 4 3 0 0 30.30 2001-01-01 00:10:00 KPDX 0 0 4 3 4 80 30.30 2001-01-01 00:15:00 KPDX 0 0 3 2 5 90 30.30 2001-01-01 00:20:00 KPDX 0 0 3 2 10 110 30.28
Untuk menghapuskan nilai indeks pendua, kita boleh menggunakan kod berikut:
df = df[~df.index.duplicated(keep='first')]
Penyelesaian ini cekap dan ringkas, menyediakan kaedah yang mudah untuk mengalih keluar baris indeks pendua daripada DataFrame panda.
Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Baris Indeks Pendua dengan Cekap dalam panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!