كيفية دمج ملفات csv متعددة في pandas (مع مثال)


يمكنك استخدام بناء الجملة الأساسي التالي لدمج ملفات CSV متعددة موجودة في نفس المجلد في pandas DataFrame:

 import pandas as pd
import glob
import bone

#define path to CSV files
path = r' C:\Users\bob\Documents\my_data_files '

#identify all CSV files
all_files = glob. glob ( os.path.join (" *.csv " ))

#merge all CSV files into one DataFrame
df = pd. concat ((pd. read_csv (f) for f in all_files), ignore_index= True )

سيقوم هذا المثال بالتحديد بدمج جميع ملفات CSV الموجودة في المجلد المسمى my_data_files في Pandas DataFrame واحد.

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: دمج ملفات CSV متعددة في Pandas

لنفترض أن لدي مجلدًا على جهاز الكمبيوتر الخاص بي يسمى my_data_files والذي يحتوي على ثلاثة ملفات CSV:

يحتوي كل ملف CSV على عمودين يسمى النقاط والتمريرات الحاسمة ، والتي تمثل النقاط والتمريرات الحاسمة للاعبي كرة السلة المختلفين.

هذا ما يبدو عليه ملف CSV الأول المسمى df1 :

يمكننا استخدام بناء الجملة التالي لدمج ملفات CSV الثلاثة الموجودة في المجلد في إطار بيانات الباندا واحد:

 import pandas as pd
import glob
import bone

#define path to CSV files
path = r' C:\Users\bob\Documents\my_data_files '

#identify all CSV files
all_files = glob. glob ( os.path.join (" *.csv " ))

#merge all CSV files into one DataFrame
df = pd. concat ((pd. read_csv (f) for f in all_files), ignore_index= True )

#view resulting DataFrame
print (df)

    assist points
0 4 3
1 5 2
2 5 4
3 6 4
4 8 6
5 9 3
6 2 3
7 10 2
8 14 9
9 15 3
10 6 10
11 8 6
12 9 4

لاحظ أنه تم استيراد ملفات CSV الثلاثة ودمجها بنجاح في DataFrame واحد.

يحتوي DataFrame النهائي على 13 صفًا وعمودين.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة Pandas read_csv() هنا .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في بايثون:

الباندا: كيفية تخطي الأسطر عند قراءة ملف CSV
الباندا: كيفية إضافة البيانات إلى ملف CSV موجود
الباندا: كيفية تحديد الأنواع عند استيراد ملف CSV
الباندا: كيفية تعيين أسماء الأعمدة عند استيراد ملف CSV

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *