Mengambil Baris mengikut Nilai Lajur Terbeza: Panduan Komprehensif
Banyak senario pengaturcaraan memerlukan pengekstrakan baris berdasarkan nilai unik dalam lajur tertentu. Artikel ini meneroka cara untuk mencapai ini menggunakan pustaka Pandas yang digunakan secara meluas dalam Python.
Pertanyaan:
Pertimbangkan set data dengan dua lajur, COL1 dan COL2, seperti yang ditunjukkan di bawah:
COL1 COL2 a.com 22 b.com 45 c.com 34 e.com 45 f.com 56 g.com 22 h.com 45
Matlamatnya ialah untuk mendapatkan hanya baris yang COL2 mengandungi nilai unik. Output yang dijangkakan ialah:
COL1 COL2 a.com 22 b.com 45 c.com 34 f.com 56
Penyelesaian:
Kaedah drop_duplicates dalam Pandas menyediakan cara yang mudah untuk menghapuskan baris pendua berdasarkan satu atau lebih lajur. Begini cara untuk menggunakannya untuk tugas khusus ini:
<code class="python">import pandas as pd df = pd.DataFrame({'COL1': ['a.com', 'b.com', 'c.com', 'e.com', 'f.com', 'g.com', 'h.com'], 'COL2': [22, 45, 34, 45, 56, 22, 45]}) # Keep only the first occurrence of each unique value in COL2 df = df.drop_duplicates('COL2') print(df)</code>
Output:
COL1 COL2 0 a.com 22 1 b.com 45 2 c.com 34 4 f.com 56
Pilihan Tambahan:
Kaedah drop_duplicates menawarkan tambahan pilihan untuk menyesuaikan pengendalian pendua:
Berikut ialah contoh yang menunjukkan pilihan ini:
<code class="python"># Keep only the last occurrence of each unique value in COL2 df = df.drop_duplicates('COL2', keep='last') # Remove all duplicate rows from the dataset df = df.drop_duplicates('COL2', keep=False)</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengambil Baris dengan Nilai Unik dalam Pandas DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!