تم حلها: تنضم الباندا غير الفريدة

Pandas هي مكتبة Python مستخدمة على نطاق واسع في مجال معالجة البيانات وتحليلها. يوفر هياكل البيانات والوظائف اللازمة للعمل مع البيانات المنظمة بسلاسة. إحدى الميزات العديدة التي يوفرها هي القدرة على ربط الجداول بمفاتيح غير فريدة ، والتي يمكن أن تكون مطلبًا شائعًا في التطبيقات العملية. في هذه المقالة ، سوف نتعمق في حل هذه المشكلة ، ونستكشف الشرح خطوة بخطوة للرمز المستخدم لربط كائنات pandas DataFrame بمفاتيح غير فريدة ، ومناقشة المكتبات والوظائف المتضمنة في هذه العملية.

المُقدّمة

يعد ربط الجداول عملية أساسية يتم إجراؤها في مهام معالجة البيانات وتحليلها. في بعض السيناريوهات ، قد يُطلب منا ضم الجداول على مفتاح غير فريد ، مما قد يمثل تحديات. ومع ذلك ، فإن العمل مع مكتبة Python القوية ، الباندا ، يسمح لنا بحل هذه المشكلة بأناقة باستخدام وظائفها المرنة.

ربط Pandas DataFrames بمفاتيح غير فريدة

للانضمام إلى DataFrames في الباندا ، يمكننا استخدام وظيفة `` merge () `، التي تدعم الانضمام على مفاتيح غير فريدة. ومع ذلك ، من الضروري أن نفهم أن نتيجة الانضمام إلى المفاتيح غير الفريدة قد تكون مختلفة عما هو متوقع ، حيث يمكن أن تؤدي إلى منتج ديكارتي ، مما قد يؤدي إلى زيادة كبيرة في عدد الصفوف في DataFrame الناتج.

فيما يلي دليل تفصيلي لاستخدام الوظيفة `` merge () `لربط DataFrames بمفاتيح غير فريدة:

import pandas as pd

# Create sample DataFrames
df1 = pd.DataFrame({"key": ["A", "B", "A", "C"], "value": [1, 2, 3, 4]})
df2 = pd.DataFrame({"key": ["A", "B", "A", "D"], "value2": [5, 6, 7, 8]})

# Perform the merge operation
result = df1.merge(df2, on="key", how="inner")

في المثال أعلاه ، قمنا أولاً باستيراد مكتبة الباندا وإنشاء نموذجين من DataFrames (df1 و df2). بعد ذلك ، نستخدم وظيفة `merge ()` لربط DataFrames في عمود "key" ، والذي يحتوي على قيم غير فريدة (يتم تكرار A و B). يتم تعيين المعلمة "how" على "داخلية" ، حيث نريد الاحتفاظ بالصفوف التي تحتوي على مفاتيح مطابقة فقط في كل من DataFrames.

فهم وظيفة دمج الباندا

تعد وظيفة `` merge () `في الباندا أداة قوية ومرنة جدًا لإجراء عمليات الانضمام إلى الجدول. بالإضافة إلى الانضمام إلى DataFrames بمفاتيح غير فريدة ، فإنه يدعم مستويات مختلفة من التخصيص ، مما يتيح لك التحكم الكامل في DataFrame الناتج.

وظيفة `merge ()` لها عدة معاملات مهمة مثل:

  • اليسار و حق: هذه هي DataFrames المراد دمجها.
  • on: العمود (الأعمدة) الذي يجب استخدامه للانضمام إلى DataFrames. يمكن أن يكون هذا اسم عمود واحد أو قائمة بأسماء الأعمدة عند الانضمام إلى أعمدة متعددة.
  • كيف: تحدد نوع الصلة المطلوب تنفيذها. تتضمن الخيارات "يسار" و "يمين" و "خارجي" و "داخلي". الافتراضي هو "داخلية".
  • لواحق: هذا هو مجموعة من لاحقات السلسلة لتطبيقها على الأعمدة المتداخلة. اللاحقة الافتراضية هي _x لإطار DataFrame الأيسر و _y لإطار DataFrame الأيمن.

يمكن تعديل هذه المعلمات وفقًا لاحتياجاتك لأداء أنواع مختلفة من عمليات الانضمام وتخصيص الإخراج.

وظائف مماثلة في الباندا

بصرف النظر عن وظيفة `` merge () `، تقدم الباندا أيضًا وظائف أخرى لدمج DataFrames بطرق مختلفة ، مثل:

  • concat (): تُستخدم هذه الوظيفة لربط إطارات البيانات على طول محور معين. يمكنك التحكم في التسلسل من خلال تحديد معلمات متنوعة مثل المحور والربط والمفاتيح.
  • انضم(): هذه طريقة ملائمة متوفرة على كائنات DataFrame لإجراء عمليات الانضمام. إنه في الأساس غلاف حول وظيفة merge () ، مع افتراض DataFrame الأيسر باعتباره المتصل DataFrame.

في الختام ، باستخدام وظيفة الباندا `merge ()` ، يمكنك بسهولة ربط DataFrames بمفاتيح غير فريدة. توفر المجموعة الغنية من المعلمات المتوفرة في وظيفة "merge ()` تحكمًا كاملاً في عملية الانضمام ، مما يلبي متطلبات معالجة البيانات المختلفة. لا تزال مكتبة الباندا أداة لا غنى عنها لمحللي البيانات وتقدم وظائف أخرى متنوعة لدمج ومعالجة إطارات البيانات بكفاءة.

الوظائف ذات الصلة:

اترك تعليق