الدمج والضم
الدرس 17 من 19 في دورة تحليلات Pandas على Coddy.
في العالم الحقيقي، غالباً ما تأتي البيانات من جداول أو ملفات متعددة. لربط هذه البيانات وتحليلها، يجب أن نكون قادرين على دمج مجموعات البيانات. لدمج dataframe، يمكننا استخدام .merge() و .join() و .concat().
تشبه .merge() عملية JOIN في SQL؛ فهي تربط الأعمدة أو الفهارس في dataframe بناءً على مفتاح واحد أو أكثر:
merged_df = df1.merge(df2, on='common_column')على سبيل المثال، هذان الجدولان:
| ID | VALUE |
| 1 | "val1" |
| 2 | "val2 |
| ID | POINTS |
| 1 | 9 |
سيصبحان:
| ID | VALUE | POINTS |
| 1 | "val1" | 9 |
تُستخدم دالة .concat() لإلحاق صفوف من dataframe واحد بنهاية dataframe آخر، مما يؤدي إلى إرجاع dataframe جديد. تشبه هذه العملية عملية 'UNION' في SQL:
concatenated_df = pd.concat([df1, df2])التحدي
سهليحتوي ملف CSV المسمى visits.csv على معلومات حول عدد الزيارات التي تمت في موقع معين في وقت معين.
إليك أول 5 أسطر من الملف:
location_id,visits,timestamp
8,1771,27498
9,4187,79919
0,4959,54228
6,7721,41588احسب min، و max، و mean، و std، و sum، و median لكل location id وقم بدمجها في dataframe واحد. أعد تسمية الأعمدة إلى:
sum_visits، و min_visits، و max_visits، و mean_visits، و std_visits و median_visits.
يجب أن يبدو الـ dataframe النهائي كما يلي:
| location_id | sum_visits | min_visits | max_visits | mean_visits | std_visits | median_visits |
| ... | ... | ... | ... | ... | ... | ... |
احفظ النتيجة في df.
جرّب بنفسك
# تم استيراد pandas كـ pd بالفعل
df = pd.read_csv("./visits.csv")
sum_visits = df.groupby("location_id").sum()
min_visits = df.groupby("location_id").min()
max_visits = df.groupby("location_id").max()
mean_visits = df.groupby("location_id").mean()
std_visits = df.groupby("location_id").std()
median_visits = df.groupby("location_id").median()
# اكتب كودك أدناه
جميع دروس تحليلات Pandas
4تحليل البيانات باستخدام Pandas
الإحصاء الوصفيتجميع البيانات وتلخيصهاأنواع التجميع المختلفةالدمج والضم3معالجة البيانات باستخدام Pandas
إرجاع النتيجة المطلوبةتصفية البياناتالإضافة والحذفتعديل البياناتتعديل السلاسل النصيةتعديلات مخصصةتدرّب بنفسك: مترجم Python عبر الإنترنت