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

পাইথন: প্যান্ডাসে অন্য ডেটাফ্রেম থেকে কলাম যোগ করা (insert)

প্যান্ডাস ডেটাফ্রেমে নির্দিষ্ট পজিশনে নতুন কলাম যোগ করার জন্য insert() মেথড ব্যবহার করা হয়। এটি ইন-প্লেস (in-place) পরিবর্তন আনে।

সিনট্যাক্স


df.insert(loc, column, value)
# loc: ইনডেক্স পজিশন (০-ভিত্তিক)
# column: নতুন কলামের নাম
# value: স্ক্যালার, সিরিজ, অ্যারে বা লিস্ট

উদাহরণ: df1 থেকে Car কলাম নিয়ে df2-তে যোগ করা


import pandas as pd

# প্রথম ডেটাফ্রেম
df1 = pd.DataFrame({
    "Car": ["Audi", "Lamborghini", "BMW", "Lexus"],
    "Place": ["US", "UK", "India", "Australia"],
    "Units": [200, 500, 800, 1000]
})

# دوم д dataframe
df2 = pd.DataFrame({
    "Model": [2018, 2019, 2020, 2021],
    "CC": [3000, 2800, 3500, 3300]
})

print("ডেটাফ্রেম ১:")
print(df1)
print("\nডেটাফ্রেম ২:")
print(df2)

# df1 থেকে Car কলাম নিয়ে df2-তে ইনসার্ট (পজিশন ১)
car_col = df1["Car"]
df2.insert(1, "LuxuryCar", car_col)

print("\nআপডেটেড ডেটাফ্রেম ২:")
print(df2)

আউটপুট


ডেটাফ্রেম ১:
         Car     Place  Units
0      Audi        US    200
1  Lamborghini      UK    500
2       BMW     India    800
3     Lexus  Australia   1000

ডেটাফ্রেম ২:
     CC  Model
0  3000   2018
1  2800   2019
2  3500   2020
3  3300   2021

আপডেটেড ডেটাফ্রেম ২:
     CC  LuxuryCar  Model
0  3000      Audi   2018
1  2800  Lamborghini  2019
2  3500       BMW   2020
3  3300      Lexus  2021

বিকল্প পদ্ধতিগুলো

১. সরাসরি অ্যাসাইনমেন্ট (শেষে যোগ হয়)


df2['LuxuryCar'] = df1['Car'].values  # .values দিয়ে ইনডেক্স অ্যালাইনমেন্ট বাঁচায়

২. assign() মেথড (নতুন ডেটাফ্রেম রিটার্ন করে)


df2_new = df2.assign(LuxuryCar=df1['Car'].values)

৩. merge() / join() (কি-ভিত্তিক)


# যদি কোনো কমন কি থাকে
df2 = df2.merge(df1[['Car']], left_index=True, right_index=True)

দ্রষ্টব্য

  • insert() ইন-প্লেস, assign() নতুন অবজেক্ট রিটার্ন করে
  • লিস্ট/সিরিজ দিয়ে অ্যাসাইন করার সময় দৈর্ঘ্য মিলতে হবে
  • .values বা .to_numpy() ব্যবহার করলে ইনডেক্স অ্যালাইনমেন্ট বাঁচায় (পজিশনাল ম্যাপ)
  1. পাইথনে পান্ডাস ডেটাফ্রেমের কলামে NaN মান গণনা করা

  2. পাইথনে পান্ডাস ডেটাফ্রেমের সাবসেট সিলেক্ট করা (সিঙ্গল এবং মাল্টিপল কলাম)

  3. পান্ডাস ডেটাফ্রেম থেকে নাল সারি ড্রপ করা (dropna)

  4. পান্ডাসে read_csv-এ skipinitialspace দিয়ে প্রাথমিক স্পেস বাদ দেওয়া