Pandas

ادغام و الحاق DataFrame در Pandas

ادغام و الحاق DataFrame در Pandas

Pandas ابزارهای قدرتمندی برای ادغام و الحاق DataFrame ها به منظور ترکیب داده ها از منابع مختلف ارائه می دهد.

انواع ادغام:

  • ادغام داخلی: فقط سطرهایی را که در هر دو DataFrame دارای کلید مشترک هستند، حفظ می کند.
  • ادغام خارجی سمت چپ: تمام سطرها از DataFrame سمت چپ را حفظ می کند و سطرهای مطابق از DataFrame سمت راست را اضافه می کند.
  • ادغام خارجی سمت راست: تمام سطرها از DataFrame سمت راست را حفظ می کند و سطرهای مطابق از DataFrame سمت چپ را اضافه می کند.
  • ادغام خارجی: تمام سطرها از هر دو DataFrame را حفظ می کند، صرف نظر از اینکه کلید مشترک دارند یا خیر.
  • پیوستن متقاطع: تمام ترکیبات ممکن از سطرها از هر دو DataFrame را ایجاد می کند.

روش های ادغام:

  • merge(): برای ادغام DataFrame ها بر اساس ستون های کلید مشترک استفاده می شود.
  • concat(): برای الحاق DataFrame ها به صورت عمودی (بالا به پایین) یا افقی (سمت به سمت) استفاده می شود.
  • append(): برای الحاق DataFrame ها به صورت عمودی به DataFrame موجود استفاده می شود.

مثال:

Python
import pandas as pd

# DataFrame های نمونه
df1 = pd.DataFrame({"Name": ["Alice", "Bob", "Charlie"], "Age": [۳۰, ۲۵, ۲۲], "City": ["New York", "Montreal", "Los Angeles"]})
df2 = pd.DataFrame({"Name": ["Bob", "Charlie", "David"], "Job": ["Software Engineer", "Data Scientist", "Marketing Manager"], "Country": ["Canada", "USA", "USA"]})

# ادغام داخلی
merged_df = df1.merge(df2, on="Name", how="inner")
print(merged_df)

# ادغام خارجی سمت چپ
left_merged_df = df1.merge(df2, on="Name", how="left")
print(left_merged_df)

# الحاق عمودی
concatenated_df = pd.concat([df1, df2])
print(concatenated_df)

نکات:

  • می توانید از پارامترهای how و on در merge() برای تعیین نوع ادغام و ستون های کلید مشترک استفاده کنید.
  • می توانید از پارامتر ignore_index در concat() برای کنترل نحوه مدیریت شاخص ها هنگام الحاق DataFrame ها استفاده کنید.
  • می توانید از توابع Pandas مانند set_index(), reset_index(), drop_duplicates() و rename() برای آماده سازی DataFrame ها قبل از ادغام یا الحاق آنها استفاده کنید.

 

با استفاده از ابزارهای ادغام و الحاق DataFrame در Pandas، می توانید به طور موثر داده ها را از منابع مختلف ترکیب و تجزیه و تحلیل کنید.

ادغام و الحاق DataFrame در Pandas: رویکرد گام به گام

در این مقاله، به بررسی ادغام و الحاق DataFrame در Pandas می پردازیم. Pandas کتابخانه ای محبوب برای تجزیه و تحلیل داده ها در پایتون است که ابزارهای قدرتمندی برای ترکیب و دستکاری مجموعه داده ها ارائه می دهد.

فرض کنید چهار DataFrame به شرح زیر داریم:

  • df1: شامل اطلاعات مربوط به سفارشات مانند شناسه سفارش، شناسه مشتری و شناسه محصول
  • df2: شامل اطلاعات مربوط به مشتریان مانند شناسه مشتری، نام و شهر
  • df3: شامل اطلاعات مربوط به محصولات مانند شناسه محصول، نام محصول و دسته بندی
  • df4: شامل اطلاعات مربوط به آدرس حمل و نقل مانند شناسه سفارش و آدرس

هدف ما ادغام این DataFrame ها برای ایجاد یک DataFrame واحد با تمام اطلاعات مربوط به سفارشات، مشتریان، محصولات و آدرس های حمل و نقل است. در عین حال، می خواهیم تمام سطرهای df1 را حفظ کنیم، حتی اگر در سایر DataFrame ها مطابقت نداشته باشند (ادغام سمت چپ).

در ادامه، مراحل ادغام و الحاق DataFrame ها را به صورت گام به گام شرح می دهیم:

۱. کتابخانه Pandas را وارد کنید:

Python
import pandas as pd

۲. DataFrame ها را بخوانبد:

فرض کنید DataFrame ها در قالب CSV ذخیره شده اند. می توانید از دستور pd.read_csv() برای خواندن آنها استفاده کنید:

Python
df1 = pd.read_csv("orders.csv")
df2 = pd.read_csv("customers.csv")
df3 = pd.read_csv("products.csv")
df4 = pd.read_csv("shipping_addresses.csv")

۳. ادغام df1 و df2:

ابتدا، df1 و df2 را بر اساس ستون مشترک “Customer ID” ادغام می کنیم. از پارامتر how="left" استفاده می کنیم تا تمام سطرهای df1 را حفظ کنیم:

Python
df1_2 = df1.merge(df2, left_on="Customer ID", right_on="Customer ID", how="left")

۴. ادغام df1_2 و df3:

در مرحله بعد، df1_2 و df3 را بر اساس ستون مشترک “Product ID” ادغام می کنیم:

Python
df1_2_3 = df1_2.merge(df3, left_on="Product ID", right_on="Product ID", how="left")

۵. ادغام df1_2_3 و df4:

در نهایت، df1_2_3 و df4 را بر اساس ستون مشترک “Order ID” ادغام می کنیم:

Python
merged_df = df1_2_3.merge(df4, left_on="Order ID", right_on="Order ID", how="left")

۶. نتیجه را بررسی کنید:

DataFrame ادغام شده را چاپ کنید تا مطمئن شوید که تمام اطلاعات به درستی ترکیب شده اند:

Python
print(merged_df)

با استفاده از این رویکرد گام به گام، می توانید به طور موثر DataFrame ها را در Pandas ادغام و الحاق کنید و مجموعه داده های جامع تری برای تجزیه و تحلیل خود ایجاد کنید.

نکات:

  • می توانید از پارامترهای مختلف merge() مانند validate="1:m" برای بررسی اینکه هر مقدار “Order ID” در df1 فقط با حداکثر یک مقدار در df2 مطابقت داشته باشد، استفاده کنید.
  • می توانید از توابع Pandas مانند set_index(), reset_index(), drop و unique() برای دستکاری بیشتر داده های ادغام شده خود استفاده کنید.
  • برای اطلاعات بیشتر در مورد ادغام و الحاق DataFrame در Pandas، به مستندات رسمی Pandas مراجعه کنید: https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.merge.html

نتیجه:

ادغام و الحاق DataFrame ها در Pandas ابزاری قدرتمند برای ترکیب مجموعه داده های مختلف و ایجاد اطلاعات جامع برای تجزیه و تحلیل است. با استفاده از رویکرد گام به گام ارائه شده در این مقاله و درک مفاهیم کلیدی، می توانید به طور موثر این عملیات را انجام دهید و به نتایج مورد نظر خود دست پیدا کنید.

۰/۵ ( ۰ امتیاز )
نمایش بیشتر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا