ภาพรวม
ใช้ pd.merge() รวมสอง DataFrame พร้อม indicator=True เพื่อสร้างคอลัมน์ _merge แสดงที่มาของแต่ละแถว
ตัวอย่างโค้ด
import pandas as pd
dataFrame1 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
})
dataFrame2 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
})
print("DataFrame1 ...\n", dataFrame1)
print("\nDataFrame2 ...\n", dataFrame2)
# Left merge with indicator
merged = pd.merge(dataFrame1, dataFrame2, how='left', on='Car', indicator=True)
print("\nMerged dataframe...\n", merged)
ผลลัพธ์
Merged dataframe...
Car Units Reg_Price _merge
0 BMW 100 7000.0 both
1 Lexus 150 1500.0 both
2 Audi 110 NaN left_only
3 Mustang 80 8000.0 both
4 Bentley 110 NaN left_only
5 Jaguar 90 6000.0 both
ค่าของ _merge Column
| Value | ความหมาย |
|---|---|
both | Key อยู่ในทั้งสอง DataFrame |
left_only | Key อยู่เฉพาะ left DataFrame |
right_only | Key อยู่เฉพาะ right DataFrame |