কম্পিউটার টিউটোরিয়াল

Python Pandas-ে ইন্ডিকেটর ভ্যালু (Indicator Value) সহ DataFrame মার্জ (Merge) করার পদ্ধতি

Pandas DataFrame মার্জ করতে merge() ফাংশন ব্যবহার করুন। সেটিতে আপনি indicator প্যারামিটার True বা False সেট করতে পারেন। যদি আপনি চেক করতে চান কোন DataFrame-এ একটি নির্দিষ্ট রেকর্ড আছে, তবে ব্যবহার করুন:

indicator=True

উপরে দেখানো অনুযায়ী, প্যারামিটার True ব্যবহার করলে আউটপুট DataFrame-এ "_merge" নামে একটি কলাম যোগ হয়।

প্রথমে pandas লাইব্রেরি এলিয়াসসহ ইম্পোর্ট করুন:

import pandas as pd

DataFrame1 তৈরি করুন:

dataFrame1 = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
        "Units": [100, 150, 110, 80, 110, 90]
    }
)

DataFrame2 তৈরি করুন:

dataFrame2 = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
        "Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
    }
)

এখন, ইন্ডিকেটর ভ্যালু True দিয়ে DataFrame মার্জ করুন:

# merge DataFrames with indicator value
mergedRes = pd.merge(dataFrame1, dataFrame2, how="left", indicator=True)

উদাহরণ

সম্পূর্ণ কোড নিচে দেওয়া হলো:

import pandas as pd

# Create DataFrame1
dataFrame1 = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
        "Units": [100, 150, 110, 80, 110, 90]
    }
)
print("DataFrame1 ...\n", dataFrame1)

# Create DataFrame2
dataFrame2 = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
        "Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
    }
)
print("\nDataFrame2 ...\n", dataFrame2)

# ইন্ডিকেটর ভ্যালু True দিয়ে DataFrame মার্জ
mergedRes = pd.merge(dataFrame1, dataFrame2, how="left", indicator=True)
print("\nMerged dataframe...\n", mergedRes)

আউটপুট

DataFrame1 ...
     Car  Units
0   BMW    100
1  Lexus   150
2  Audi    110
3 Mustang   80
4 Bentley  110
5 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...
     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" কলামে "both" মানে দুটি DataFrame-এই ভ্যালু আছে, "left_only" মানে শুধু বাম পাশের DataFrame-এ আছে।

  1. পাইথন পান্ডাসে ওন-টু-ওয়ান রিলেশন দিয়ে ডেটাফ্রেম মার্জ করা

  2. পাইথনে ম্যাটপ্লটলিব ব্যবহার করে পান্ডাস ডেটাফ্রেমের পাই চার্ট আঁকা

  3. পাইথনে ম্যাটপ্লটলিব ব্যবহার করে পান্ডাস ডেটাফ্রেমের হিস্টোগ্রাম আঁকা

  4. পাইথন পান্ডাসে fillna(0) ব্যবহার করে ডেটাফ্রেমের সব NaN মান ০ দিয়ে প্রতিস্থাপন করা