"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية محورية Dataframe باستخدام الباندا؟

كيفية محورية Dataframe باستخدام الباندا؟

تم النشر بتاريخ 2024-11-14
تصفح:268

How to Pivot a Dataframe Using Pandas?

كيفية تدوير إطار البيانات باستخدام Pandas

تعد إعادة تشكيل البيانات الجدولية مهمة أساسية في تحليل البيانات. التمحور، وهو أسلوب لنقل الصفوف والأعمدة في إطار البيانات، غالبًا ما يكون مفيدًا لإنشاء جداول محورية واستكشاف البيانات من وجهات نظر مختلفة. دعونا نستكشف كيفية تنفيذ هذه العملية في Pandas، وهي مكتبة قوية لمعالجة البيانات.

لتحريك إطار بيانات، استخدم بشكل أساسي الطريقة .pivot. تأخذ هذه الطريقة عدة وسيطات:

  1. الفهرس : يحدد العمود (الأعمدة) ليصبح فهرس إطار البيانات المحوري.
  2. الأعمدة : يشير إلى الأعمدة (الأعمدة) التي ستصبح رؤوس الأعمدة لإطار البيانات المحوري.
  3. القيمالقيم: تشير إلى الأعمدة (الأعمدة) التي يجب استخدام قيمها لملء الجدول المحوري.

على سبيل المثال، ضع في اعتبارك إطار البيانات التالي:

Indicator  Country  Year  Value
1          Angola   2005  6
2          Angola   2005  13
3          Angola   2005  10
4          Angola   2005  11
5          Angola   2005  5
1          Angola   2006  3
2          Angola   2006  2
3          Angola   2006  7
4          Angola   2006  3
5          Angola   2006  6

لتحريك إطار البيانات هذا بحيث تصبح القيم الموجودة في عمود المؤشر هي الأعمدة الجديدة، استخدم الكود التالي:

out = df.pivot(index=['Country', 'Year'], columns='Indicator', values='Value')
print(out)

ستنتج هذه العملية إطار البيانات المحوري التالي:

Indicator     1   2   3   4  5
Country Year
Angola  2005  6  13  10  11  5
        2006  3   2   7   3  6

لتحويل إطار البيانات المحوري مرة أخرى إلى جدول مسطح، استخدم .rename_axis لإزالة محور المؤشر و .reset_index لتحويل البلد والسنة إلى أعمدة عادية.

print(out.rename_axis(columns=None).reset_index())

سيؤدي هذا إلى بنية إطار البيانات الأصلية:

  Country  Year  1   2   3   4  5
0  Angola  2005  6  13  10  11  5
1  Angola  2006  3   2   7   3  6

إذا كانت بياناتك تحتوي على مجموعات مكررة من التصنيفات (على سبيل المثال، البلد، السنة، المؤشر)، فاستخدم .pivot_table. تأخذ هذه الطريقة المتوسط ​​بشكل افتراضي.

out = df.pivot_table(
    index=['Country', 'Year'],
    columns='Indicator',
    values='Value')
print(out.rename_axis(columns=None).reset_index())

سيؤدي ذلك إلى إخراج إطار بيانات محوري مشابه، ولكن مع قيم متوسطة للمجموعات المكررة.

للحصول على نظرة عامة أكثر تفصيلاً، راجع إلى دليل مستخدم Pandas حول إعادة التشكيل والجداول المحورية.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3