كيفية الفرز حسب أعمدة متعددة في r (مع أمثلة)


يمكنك استخدام أي من الطرق التالية لفرز إطار البيانات عبر أعمدة متعددة في R:

الطريقة الأولى: استخدم Base R

 df[order(-df$column1, df$column2), ]

الطريقة الثانية: استخدم dplyr

 library (dplyr)

df %>%
  arrange( desc (column1), column2)

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

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G'),
                 points=c(90, 90, 93, 91, 91, 99, 85),
                 assists=c(33, 28, 31, 39, 34, 40, 44))

#view data frame
df

  team points assists
1 A 90 33
2 B 90 28
3 C 93 31
4 D 91 39
5 E 91 34
6 F 99 40
7 G 85 44

الطريقة الأولى: استخدم Base R

يوضح التعليمة البرمجية التالية كيفية فرز كتلة البيانات المستندة إلى R عن طريق النقاط التنازلية (من الأكبر إلى الأصغر)، ثم عن طريق المساعدة التصاعدية:

 #sort by points descending, then by assists ascending
df[order(-df$points, df$assists), ]

  team points assists
6 F 99 40
3 C 93 31
5 E 91 34
4 D 91 39
2 B 90 28
1 A 90 33
7 G 85 44

لاحظ أن الصفوف في إطار البيانات مرتبة حسب النقاط من الأكبر إلى الأصغر، ثم حسب النقاط المساعدة من الأصغر إلى الأكبر.

الطريقة الثانية: استخدم dplyr

يوضح التعليمة البرمجية التالية كيفية استخدام الوظائف الموجودة في حزمة dplyr لفرز إطار البيانات حسب النقاط التنازلية (من الأكبر إلى الأصغر) ثم المساعدة التصاعدية:

 library (dplyr)

df %>%
  arrange( desc (dots), assists)

  team points assists
1 F 99 40
2 C 93 31
3 E 91 34
4 D 91 39
5 B 90 28
6 A 90 33
7 G 85 44

مرة أخرى، يتم ترتيب الصفوف في إطار البيانات حسب النقاط من الأكبر إلى الأصغر، ثم حسب النقاط المساعدة من الأصغر إلى الأكبر.

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

مصادر إضافية

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

كيفية فرز القيم أبجديًا في R
كيفية فرز إطار البيانات حسب التاريخ في R

Add a Comment

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