Skip to main content
تُعد Pandas مكتبة شائعة لمعالجة البيانات وتحليلها في Python. في الإصدار 2 من chDB، حسّنّا أداء الاستعلام على إطارات بيانات Pandas وطرحنا دالة الجدول Python. في هذا الدليل، سنتعلّم كيفية الاستعلام عن Pandas باستخدام دالة الجدول Python.

التهيئة

لنبدأ أولًا بإنشاء بيئة افتراضية:
والآن سنقوم بتثبيت chDB. تأكد من أن لديك الإصدار 2.0.2 أو أحدث:
والآن سنثبّت Pandas ومكتبتين إضافيتين:
سنستخدم ipython لتشغيل الأوامر في بقية الدليل، ويمكنك تشغيله بتنفيذ:
يمكنك أيضًا استخدام هذا الكود في سكربت Python أو في دفتر Jupyter المفضل لديك.

إنشاء Pandas DataFrame من عنوان URL

سنُجري query لبعض البيانات من مستودع StatsBomb على GitHub. لنبدأ أولًا باستيراد requests وpandas:
ثم سنحمّل أحد ملفات المباريات بتنسيق JSON إلى DataFrame:
لنلقِ نظرة على البيانات التي سنتعامل معها:
بعد ذلك، سنحمّل أحد ملفات JSON الخاصة بالأحداث، وسنضيف أيضًا عمودًا باسم match_id إلى كائن DataFrame هذا:
ومرةً أخرى، دعونا نلقِ نظرةً على الصف الأول:

الاستعلام عن Pandas DataFrames

بعد ذلك، لنرَ كيف نستعلم عن وحدات DataFrame هذه باستخدام chDB. سنستورد المكتبة:
يمكننا إجراء استعلامات على إطارات بيانات Pandas باستخدام دالة الجدول Python:
إذًا، إذا أردنا سرد الأعمدة في matches_df، يمكننا كتابة ما يلي:
يمكننا بعد ذلك معرفة الحكام الذين أداروا أكثر من مباراة واحدة بكتابة الاستعلام التالي:
الآن، لنستعرض events_df.

ربط إطارات بيانات Pandas

يمكننا أيضًا ضمّ إطارات البيانات معًا في استعلام. على سبيل المثال، للحصول على لمحة عامة عن المباراة، يمكننا كتابة الاستعلام التالي:

ملء جدول انطلاقًا من DataFrame

يمكننا أيضًا إنشاء جداول ClickHouse وملؤها انطلاقًا من DataFrames. إذا أردنا إنشاء جدول في chDB، فعلينا استخدام Stateful Session API. لنستورد وحدة session:
هيّئ جلسة:
بعد ذلك، سننشئ قاعدة بيانات:
بعد ذلك، أنشئ جدول events اعتمادًا على events_df:
يمكننا بعد ذلك تشغيل الاستعلام الذي يُرجع اللاعب الأكثر استقبالًا للتمريرات:

الربط بين Pandas DataFrame وجدول

أخيرًا، يمكننا أيضًا تحديث استعلام الربط لربط matches_df DataFrame بجدول statsbomb.events:
آخر تعديل في ٢٣ يوليو ٢٠٢٦