Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Cari Semua Item Pendua dalam Pandas DataFrame Menggunakan \'isin\' dan \'sort_values\'?

Bagaimana untuk Cari Semua Item Pendua dalam Pandas DataFrame Menggunakan \'isin\' dan \'sort_values\'?

Susan Sarandon
Susan Sarandonasal
2024-10-25 09:54:28712semak imbas

How to Find All Duplicate Items in a Pandas DataFrame Using 'isin' and 'sort_values'?

Menyenaraikan Semua Item Pendua dalam Pandas DataFrame Menggunakan 'isin' dan 'sort_values'

Dalam artikel ini, kami akan menangani isu tersebut mencari semua item pendua dalam senarai item yang mungkin mengandungi ralat eksport. Matlamat kami adalah untuk mendapatkan semula senarai komprehensif pendua ini untuk perbandingan manual dan penyelesaian masalah.

Kaedah panda 'pendua' hanya mengembalikan contoh pertama nilai pendua secara lalai. Walau bagaimanapun, menggunakan gabungan 'isin' dan 'sort_values', kami boleh memaparkan semua baris yang dikaitkan dengan ID pendua:

<code class="python"># Import the pandas library
import pandas as pd

# Read the data from the CSV file
df = pd.read_csv('dup.csv')

# Extract the 'ID' column
ids = df['ID']

# Use 'isin' to filter for rows where the 'ID' matches any of the duplicate IDs
df[ids.isin(ids[ids.duplicated()])].sort_values('ID')</code>

Kaedah ini menyenaraikan semua baris daripada DataFrame di mana lajur 'ID' mengandungi mana-mana ID dibenderakan sebagai pendua. Output menghapuskan baris pendua, memastikan setiap ID pendua muncul sekali sahaja.

Kaedah Alternatif: Pengumpulan mengikut ID dengan 'groupby' dan 'concat'

Pendekatan alternatif melibatkan pengumpulan DataFrame mengikut 'ID' dan kemudian menggabungkan kumpulan dengan lebih daripada satu baris:

<code class="python"># Group the DataFrame by 'ID'
groups = df.groupby('ID')

# Identify groups with more than one row
large_groups = [group for _, group in groups if len(group) > 1]

# Concatenate the large groups
pd.concat(large_groups)</code>

Kaedah ini mendapatkan semula semua item pendua, sekali lagi tidak termasuk pendua dalam setiap kumpulan pendua. Secara lalai, fungsi 'concat' menambahkan kumpulan pendua secara menegak.

Atas ialah kandungan terperinci Bagaimana untuk Cari Semua Item Pendua dalam Pandas DataFrame Menggunakan \'isin\' dan \'sort_values\'?. 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