Rumah >pembangunan bahagian belakang >Tutorial Python >Cara menggunakan Panda untuk mengendalikan nilai pendua dalam data: analisis komprehensif kaedah penyahduplikasian
Analisis komprehensif kaedah deduplikasi Pandas: Mengendalikan nilai pendua dalam data dengan mudah, contoh kod khusus diperlukan
Pengenalan:
Dalam proses analisis dan pemprosesan data, selalunya ditemui bahawa data mengandungi nilai pendua. Nilai pendua ini mungkin mengelirukan keputusan analisis atau menjejaskan ketepatan data. Oleh itu, deduplikasi adalah bahagian penting dalam pemprosesan data. Sebagai perpustakaan pemprosesan data yang digunakan secara meluas dalam Python, Pandas menyediakan pelbagai kaedah penduaan dan boleh mengendalikan nilai pendua dalam data dengan mudah. Artikel ini akan menganalisis kaedah deduplikasi yang biasa digunakan dalam Panda dan memberikan contoh kod khusus untuk membantu pembaca memahami dan menggunakan kaedah ini dengan lebih baik.
1. kaedah drop_duplicates
Kaedah drop_duplicates adalah salah satu kaedah deduplikasi yang paling biasa digunakan dalam Panda. Ia mengalih keluar nilai pendua daripada data berdasarkan lajur atau baris yang ditentukan. Penggunaan khusus adalah seperti berikut:
df.drop_duplicates(subset=None, keep='first', inplace=False)
Antaranya, df mewakili set data yang akan dinyahduplikasi, subset ialah lajur atau baris yang ditentukan, dan lalai ialah Tiada, yang bermaksud semua lajur dinyahduplikasi. Parameter simpan menunjukkan nilai berulang yang perlu disimpan. Lalai ialah 'pertama', yang bermaksud mengekalkan nilai yang pertama muncul Anda juga boleh memilih 'terakhir', yang bermaksud mengekalkan nilai yang muncul terakhir. Parameter inplace menunjukkan sama ada untuk mengubah suai set data asal Nilai lalai ialah Palsu, yang bermaksud mengembalikan set data pendua yang baharu.
Contoh khusus:
Andaikan kita mempunyai set data df yang mengandungi nilai pendua:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3, 1, 2, 3], 'B': ['a', 'b', 'c', 'a', 'b', 'c']}) print(df)
Keputusan yang dijalankan adalah seperti berikut:
A B 0 1 a 1 2 b 2 3 c 3 1 a 4 2 b 5 3 c
Kita boleh menggunakan kaedah drop_duplicates untuk mengalih keluar nilai pendua:
hasil yang dijalankan adalah seperti berikut: :df_drop_duplicates = df.drop_duplicates() print(df_drop_duplicates)Daripada keputusan yang kita Seperti yang dapat dilihat, kaedah drop_duplicates berjaya mengalih keluar nilai pendua dalam set data. 2. Kaedah pendua
Kaedah pendua adalah satu lagi kaedah penduaan yang biasa digunakan dalam Panda. Tidak seperti kaedah drop_duplicates, kaedah pendua mengembalikan Siri Boolean untuk menentukan sama ada elemen dalam setiap baris atau lajur diduplikasi. Penggunaan khusus adalah seperti berikut:
A B 0 1 a 1 2 b 2 3 cAntaranya, df mewakili set data untuk diduplikasi, subset ialah lajur atau baris yang ditentukan, dan lalai ialah Tiada, yang bermaksud semua lajur dinilai. Maksud parameter keep adalah sama seperti kaedah drop_duplicates. Contoh khusus:
Andaikan kita masih menggunakan set data di atas df, kita boleh menggunakan kaedah pendua untuk menentukan sama ada setiap baris diulang:
df.duplicated(subset=None, keep='first')Hasil larian adalah seperti berikut:
df_duplicated = df.duplicated() print(df_duplicated)Seperti yang dapat dilihat daripada keputusan , baris ke-0 dan ke-0 dalam Baris Siri 1 dan 2 yang dikembalikan adalah Salah, menunjukkan bahawa baris ini tidak berulang; 3. Senario aplikasi drop_duplicates dan kaedah pendua
drop_duplicates dan kaedah pendua digunakan secara meluas dalam pembersihan data dan analisis data senario aplikasi biasa termasuk:
Andaikan kami mempunyai set data jualan df, yang mengandungi rekod jualan di beberapa bandar. Kami mahu mengira jumlah jualan di setiap bandar dan mengalih keluar bandar pendua. Kita boleh menggunakan kod berikut untuk mencapai ini:
0 False 1 False 2 False 3 True 4 True 5 True dtype: boolKeputusan yang dijalankan adalah seperti berikut:
import pandas as pd df = pd.DataFrame({'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shanghai', 'Beijing'], 'Sales': [1000, 2000, 3000, 1500, 1200]}) df_drop_duplicates = df.drop_duplicates(subset='City') df_total_sales = df.groupby('City')['Sales'].sum() print(df_drop_duplicates) print(df_total_sales)Seperti yang dapat dilihat daripada keputusan, kami mula-mula menggunakan kaedah drop_duplicates untuk mengalih keluar bandar pendua, dan kemudian menggunakan kaedah kumpulan dan jumlah untuk mengira jumlah jualan setiap bandar. Kesimpulan:
Melalui analisis artikel ini, kami memahami senario penggunaan dan aplikasi kaedah penduaan yang biasa digunakan drop_duplicates dan pendua dalam Panda. Kaedah ini boleh membantu kami dengan mudah mengendalikan nilai pendua dalam data dan memastikan ketepatan analisis dan pemprosesan data. Dalam aplikasi praktikal, kita boleh memilih kaedah yang sesuai mengikut masalah tertentu dan menggabungkannya dengan kaedah Panda lain untuk pembersihan dan analisis data.
City Sales 0 Beijing 1000 1 Shanghai 2000 2 Guangzhou 3000 Sales City Beijing 2200 Guangzhou 3000 Shanghai 3500Kod di atas dijalankan dalam persekitaran Python, dan hasilnya akan mengeluarkan set data pendua dan jumlah statistik jualan. Rujukan:
Atas ialah kandungan terperinci Cara menggunakan Panda untuk mengendalikan nilai pendua dalam data: analisis komprehensif kaedah penyahduplikasian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!