পান্ডাস merge() ফাংশনে validate="many_to_one" (বা "m:1") ব্যবহার করে মerni-টু-ওয়ান রিলেশন বাধ্য করা যায়। এটি চেক করে যে ডান পক্ষের ডেটাসেটে মার্জ কী ইউনিক।
প্রথম ডেটাফ্রেম তৈরি:
dataFrame1 = pd.DataFrame({
"Car": ['BMW', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 110, 80, 110, 90]
})
দ্বিতীয় ডেটাফ্রেম তৈরি:
dataFrame2 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
})
মerni-টু-ওয়ান মার্জ:
mergedRes = pd.merge(dataFrame1, dataFrame2, validate="many_to_one")
সম্পূর্ণ কোড উদাহরণ:
import pandas as pd
# DataFrame1
dataFrame1 = pd.DataFrame({
"Car": ['BMW', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 110, 80, 110, 90]
})
print("DataFrame1 ...\n", dataFrame1)
# DataFrame2
dataFrame2 = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
})
print("\nDataFrame2 ...\n", dataFrame2)
# মerni-টু-ওয়ান মার্জ
mergedRes = pd.merge(dataFrame1, dataFrame2, validate="many_to_one")
print("\nMerged dataframe with many-to-one relation...\n", mergedRes)
আউটপুট:
DataFrame1 ...
Car Units
0 BMW 100
1 Audi 110
2 Mustang 80
3 Bentley 110
4 Jaguar 90
DataFrame2 ...
Car Reg_Price
0 BMW 7000
1 Lexus 1500
2 Tesla 5000
3 Mustang 8000
4 Mercedes 9000
5 Jaguar 6000
Merged dataframe with many-to-one relation...
Car Units Reg_Price
0 BMW 100 7000
1 Mustang 80 8000
2 Jaguar 90 6000
ব্যাখ্যা:
- DataFrame1 (বাম) -এ Car ডুপ্লিকেট নেই (ইউনিক)
- DataFrame2 (ডান) -এ Car ইউনিক (validate চেক করে)
- শুধু সাধারণ Car মানগুলো মার্জ হয়েছে (BMW, Mustang, Jaguar)
- Audi, Bentley DataFrame2-এ নেই; Lexus, Tesla, Mercedes DataFrame1-এ নেই