الباندا: كيفية فرز الجدول المحوري حسب القيم في العمود


يمكنك استخدام بناء الجملة الأساسي التالي لفرز جدول الباندا المحوري بناءً على قيم العمود:

 my_pivot_table. sort_values (by=[' some_column '], ascending= False )

يقوم هذا المثال المحدد بفرز قيم جدول محوري يسمى my_pivot_table بناءً على قيم some_column بترتيب تنازلي.

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

مثال: فرز جدول Pandas المحوري حسب القيم الموجودة في العمود

لنفترض أن لدينا DataFrame الباندا التالية التي تحتوي على معلومات حول مختلف لاعبي كرة السلة:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B',
                            'B', 'B', 'C', 'C', 'C', 'C'],
                   ' points ': [4, 4, 2, 8, 9, 5, 5, 7, 8, 8, 4, 3],
                   ' assists ': [2, 2, 5, 5, 4, 7, 5, 3, 9, 8, 4, 4]})

#view DataFrame
print (df)

   team points assists
0 to 4 2
1 to 4 2
2 to 2 5
3 to 8 5
4 B 9 4
5 B 5 7
6 B 5 5
7 B 7 3
8 C 8 9
9 C 8 8
10 C 4 4
11 C 3 4

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

 #create pivot table
df_pivot = df. pivot_table (index=[' team '], values=[' points ', ' assists '], aggfunc=' sum ')

#view pivot table
print (df_pivot)

      assist points
team                 
At 14 18
B 19 26
C 25 23

افتراضيًا، يقوم الباندا بفرز صفوف الجدول المحوري أبجديًا استنادًا إلى قيمة عمود الفهرس، والذي يصادف أنه عمود الفريق .

ومع ذلك، يمكننا استخدام الدالة sort_values() ‎ لفرز صفوف الجدول المحوري استنادًا إلى قيم العمود النقطي:

 #sort pivot table by value in 'points' column in descending order
sorted_df_pivot = df_pivot. sort_values (by=[' points '], ascending= False )

#view sorted pivot table
print (sorted_df_pivot)

      assist points
team                 
B 19 26
C 25 23
At 14 18

لاحظ أنه يتم الآن فرز صفوف PivotTable بناءً على القيم الموجودة في عمود النقاط .

لاحظ أنه إذا قمت بحذف الوسيطة ascending=False ، فسيتم فرز الصفوف حسب القيم الموجودة في عمود النقاط بترتيب تصاعدي:

 #sort pivot table by value in 'points' column in ascending order
sorted_df_pivot = df_pivot. sort_values (by=[' points '])

#view sorted pivot table
print (sorted_df_pivot)

      assist points
team                 
At 14 18
C 25 23
B 19 26

لاحظ أنه يتم الآن فرز صفوف PivotTable حسب قيم الأعمدة النقطية بترتيب تصاعدي (من الأصغر إلى الأكبر).

ملاحظة رقم 1: يمكنك أيضًا الفرز على أعمدة متعددة في الجدول المحوري عن طريق تمرير قيم متعددة إلى الوسيطة by في الدالة sort_values() .

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

مصادر إضافية

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

الباندا: كيفية إعادة تشكيل DataFrame من الطويل إلى الواسع
الباندا: كيفية إعادة تشكيل DataFrame من العرض إلى الطول
الباندا: كيفية التجميع والتجميع عبر أعمدة متعددة

Add a Comment

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