Merge & Concat
الدرس 17 من 19 في دورة Pandas Analytics على 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 Analytics
4Data Analysis with Pandas
Descriptive StatisticsGrouping and Aggregating DataDifferent AggregationsMerge & Concat2Working with the DataFrame
Understanding DataFramesAccessing DataData Cleaning - Missing dataData Cleaning - More tools3Data Manipulation with Pandas
Return Requested ResultFilter DataAdd & DeleteModify DataModify StringsCustom Modifications