Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python – หาสมาชิกที่ซ้ำกันใน Pandas DataFrame

เพื่อหาสมาชิกที่ซ้ำกัน (common elements) ใน Pandas DataFrame สามารถใช้เมธอด merge() พร้อมระบุคอลัมน์ที่ต้องการเปรียบเทียบได้

ขั้นตอน

  • สร้าง DataFrame แรก df1

  • พิมพ์ DataFrame ต้นทาง df1

  • สร้าง DataFrame ที่สอง df2

  • พิมพ์ DataFrame ต้นทาง df2

  • หาสมาชิกที่ซ้ำกันด้วยเมธอด merge()

  • พิมพ์ DataFrame ที่ซ้ำกัน

ตัวอย่าง

import pandas as pd
df1 = pd.DataFrame({
    "x": [5, 2, 7, 0],
    "y": [4, 7, 5, 1],
    "z": [9, 3, 5, 1]
})
df2 = pd.DataFrame({
    "x": [5, 2, 7, 0, 11, 12],
    "y": [4, 7, 5, 1, 19, 20],
    "z": [9, 3, 5, 1, 29, 30]
})
print("Input DataFrame 1 is:\n", df1)
print("Input DataFrame 2 is:\n", df2)
common = df1.merge(df2, on=['x', 'y', 'z'])
print("Common of DataFrame 1 and 2 is: \n", common)

ผลลัพธ์

Input DataFrame 1 is:
    x  y  z
0   5  4  9
1   2  7  3
2   7  5  5
3   0  1  1
Input DataFrame 2 is:
    x   y   z
0   5   4   9
1   2   7   3
2   7   5   5
3   0   1   1
4  11  19  29
5  12  20  30
Common of DataFrame 1 and 2 is:
    x  y  z
0   5  4  9
1   2  7  3
2   7  5  5
3   0  1  1

คำอธิบาย

  • นำเข้า pandas สร้าง DataFrame สองตัวที่มีคอลัมน์ x, y, z

  • df2 มีแถวเพิ่มเติมที่ไม่มีใน df1

  • ใช้ df1.merge(df2, on=['x','y','z']) รวมเฉพาะแถวที่ค่าทุกคอลัมน์ตรงกัน (inner join)

  • แสดงผล DataFrame ที่ซ้ำกัน (4 แถวแรก)