Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pelajari teknik ini untuk menjadikan data anda lebih kemas: pengenalan ringkas kepada kaedah penduaan Pandas

Pelajari teknik ini untuk menjadikan data anda lebih kemas: pengenalan ringkas kepada kaedah penduaan Pandas

王林
王林asal
2024-01-24 08:02:06723semak imbas

Pelajari teknik ini untuk menjadikan data anda lebih kemas: pengenalan ringkas kepada kaedah penduaan Pandas

Pengenalan kepada kaedah deduplikasi Pandas: Belajar menggunakan teknik ini untuk menjadikan data lebih bersih, contoh kod khusus diperlukan

Ikhtisar:
Dalam analisis dan pemprosesan data, kita sering menghadapi situasi di mana data pendua perlu diproses. Kewujudan data pendua mungkin membawa kepada berat sebelah dalam keputusan analisis, jadi penyahduplikasi adalah operasi pemprosesan data yang sangat penting dan asas. Pandas menyediakan pelbagai kaedah deduplikasi Artikel ini akan memperkenalkan secara ringkas teknik yang biasa digunakan dan memberikan beberapa contoh kod khusus.

Kaedah 1: drop_duplicates()
Kaedah drop_duplicates() Pandas ialah salah satu kaedah yang paling biasa digunakan untuk penyahduplikasian. Ia boleh mengalih keluar baris pendua daripada data berdasarkan lajur yang ditentukan. Secara lalai, kaedah ini mengekalkan kejadian pertama nilai pendua dan memadamkan kejadian berikutnya bagi nilai pendua. Berikut ialah contoh kod:

import panda sebagai pd

Buat DataFrame dengan data pendua

data = {'A': [1, 2, 3, 4, 4, 5, 6],

    'B': ['a', 'b', 'c', 'd', 'd', 'e', 'f']}

df = pd.DataFrame(data)

Gunakan kaedah drop_duplicates() untuk mengalih keluar baris pendua

df.drop_duplicates(inplace=True)

print(df)

Jalankan kod di atas dan anda akan mendapat DataFramrow .

Kaedah 2: duplicated() dan ~ operator
Sebagai tambahan kepada kaedah drop_duplicates(), kita juga boleh menggunakan kaedah duplicated() untuk menentukan sama ada setiap baris ialah baris pendua, dan kemudian gunakan operator ~ untuk menyongsangkan untuk memilih baris bukan pendua. Berikut ialah contoh kod:

import panda sebagai pd

Buat DataFrame dengan data pendua

data = {'A': [1, 2, 3, 4, 4, 5, 6],

    'B': ['a', 'b', 'c', 'd', 'd', 'e', 'f']}

df = pd.DataFrame(data)

Gunakan pendua() dan ~ operator untuk mengalih keluar baris pendua

df = df[~df.duplicated()]

print(df)

Menjalankan kod di atas, anda akan mendapat yang sama hasil sebagai kaedah sebelumnya Hasil yang sama.

Kaedah 3: parameter subset
Kaedah drop_duplicates() juga menyediakan parameter subset, yang boleh menentukan satu atau lebih lajur untuk menentukan baris pendua. Berikut ialah contoh kod:

import panda sebagai pd

Buat DataFrame dengan data pendua

data = {'A': [1, 2, 3, 4, 4, 5, 6],

    'B': ['a', 'b', 'c', 'd', 'd', 'e', 'f'],
    'C': ['x', 'y', 'y', 'z', 'z', 'y', 'z']}

df = pd.DataFrame(data)

Gunakan parameter subset untuk mengalih keluar baris pendua lajur tertentu

df.drop_duplicates(subset=['A', 'B'], inplace=True)

print(df)

Jalankan di atas Kod akan mendapat hasil daripada mengalih keluar baris pendua berdasarkan lajur 'A' dan 'B'.

Kaedah 4: simpan parameter
Parameter simpan kaedah drop_duplicates() boleh ditetapkan kepada 'terakhir' untuk mengekalkan nilai pendua yang terakhir. Berikut ialah contoh kod:

import panda sebagai pd

Buat DataFrame dengan data pendua

data = {'A': [1, 2, 3, 4, 4, 5, 6],

    'B': ['a', 'b', 'c', 'd', 'd', 'e', 'f']}

df = pd.DataFrame(data)

Gunakan parameter keep untuk mengekalkan nilai pendua terakhir

df.drop_duplicates(keep='last', inplace=True)

print(df)

Jalankan kod di atas dan anda akan mendapat pendua yang dikekalkan Hasil daripada nilai terakhir.

Kaedah 5: Gunakan kunci utama untuk mengalih keluar pendua
Apabila memproses DataFrame yang mengandungi berbilang lajur, kita boleh menggunakan kaedah set_index() untuk menetapkan satu atau lebih lajur sebagai kunci utama, dan kemudian gunakan kaedah drop_duplicates() untuk mengalih keluar pendua barisan. Berikut ialah contoh kod:

import panda sebagai pd

Buat DataFrame dengan data pendua

data = {'A': [1, 2, 3, 4, 4, 5, 6],

    'B': ['a', 'b', 'c', 'd', 'd', 'e', 'f'],
    'C': ['x', 'y', 'y', 'z', 'z', 'y', 'z']}

df = pd.DataFrame(data)

Gunakan kaedah set_index() untuk menetapkan lajur 'A' dan 'B' sebagai kunci utama, dan kemudian gunakan kaedah drop_duplicates() untuk mengalih keluar baris pendua

df.set_index(['A ', 'B'] , inplace=True)
df = df[~df.index.duplicated()]

print(df)

Jalankan kod di atas dan anda akan mendapat hasil mengalih keluar baris pendua berdasarkan lajur 'A' dan 'B'.

Ringkasan:
Artikel ini memperkenalkan secara ringkas beberapa kaedah penduaan yang biasa digunakan dalam Panda, termasuk kaedah drop_duplicates(), pendua() dan ~ operator, parameter subset, parameter simpan dan kaedah menggunakan kunci utama untuk menyahduplikasi. Dengan mempelajari dan menggunakan teknik ini secara fleksibel, kami boleh memproses data berulang dengan lebih mudah, menjadikan data lebih bersih dan menyediakan asas yang boleh dipercayai untuk analisis dan pemprosesan data seterusnya. Saya harap artikel ini akan membantu anda dalam proses pembelajaran Panda.

Atas ialah kandungan terperinci Pelajari teknik ini untuk menjadikan data anda lebih kemas: pengenalan ringkas kepada kaedah penduaan Pandas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn