الباندا: ابحث عن قيم فريدة في العمود وقم بفرزها
يمكنك استخدام بناء الجملة الأساسي التالي للعثور على قيم فريدة في عمود من الباندا DataFrame ثم فرزها:
df[' my_column ']. drop_duplicates (). sort_values ()
سيؤدي هذا إلى إرجاع سلسلة الباندا التي تحتوي على كل قيمة فريدة في عمود مرتبة بترتيب تصاعدي.
لفرز القيم الفريدة بترتيب تنازلي، استخدم ascending=False :
df[' my_column ']. drop_duplicates (). sort_values (ascending= False )
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: ابحث عن قيم فريدة في عمود Pandas وقم بفرزها
لنفترض أن لدينا DataFrame الباندا التالية:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], ' points ': [5, 5, 9, 12, 12, 5, 10, 13, 13, 19]}) #view DataFrame print (df) team points 0 to 5 1 to 5 2 to 9 3 to 12 4 to 12 5 B 5 6 B 10 7 B 13 8 B 13 9 B 19
يمكننا استخدام الصيغة التالية للحصول على القيم الفريدة لعمود النقاط ثم فرزها بترتيب تصاعدي:
#get unique values in points column and sort them
df[' points ']. drop_duplicates (). sort_values ()
0 5
2 9
6 10
3 12
7 13
9 19
Name: points, dtype: int64
يعرض الإخراج كل من القيم الفريدة في عمود النقطة مرتبة بترتيب تصاعدي:
- 5
- 9
- عشرة
- 12
- 13
- 19
يمكننا أيضًا الحصول على القيم الفريدة في عمود النقاط مرتبة تنازليًا عن طريق تحديد ascending=False في الدالة sort_values() :
#get unique values in points column and sort them in descending order
df[' points ']. drop_duplicates (). sort_values (ascending= False )
9 19
7 13
3 12
6 10
2 9
0 5
Name: points, dtype: int64
يعرض الإخراج كل من القيم الفريدة في عمود النقطة مرتبة بترتيب تنازلي:
- 19
- 13
- 12
- عشرة
- 9
- 5
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة pandas drop_duplicates() هنا.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية أداء الوظائف الشائعة الأخرى في الباندا:
الباندا: كيفية تحديد صفوف مفردة في DataFrame
الباندا: كيفية الحصول على قيم فريدة من عمود الفهرس
الباندا: كيفية حساب مجموعات فريدة من عمودين