كيفية إعادة ترتيب الأعمدة في r
في كثير من الأحيان قد ترغب في إعادة ترتيب الأعمدة في إطار البيانات في R.
ولحسن الحظ، من السهل القيام بذلك باستخدام الدالة Select() من الحزمة dplyr .
library (dplyr)
يوضح هذا البرنامج التعليمي عدة أمثلة لكيفية استخدام هذه الوظيفة عمليًا باستخدام إطار البيانات التالي:
#create data frame df <- data.frame(player = c('a', 'b', 'c', 'd', 'e'), position = c('G', 'F', 'F', 'G', 'G'), points = c(12, 15, 19, 22, 32), rebounds = c(5, 7, 7, 12, 11)) #view data frame df player position points rebounds 1 to G 12 5 2 b F 15 7 3 c F 19 7 4 d G 22 12 5th G 32 11
مثال 1: نقل عمود إلى الموضع الأول
يوضح التعليمة البرمجية التالية كيفية نقل عمود معين في إطار بيانات إلى الموضع الأول:
#move column 'points' to first position df %>% select(points, everything() ) points player position rebounds 1 12 a G 5 2 15 b F 7 3 19 c F 7 4 22 d G 12 5 32nd G 11
يخبر هذا الكود dplyr بتحديد عمود النقاط أولاً، ثم تضمين كافة الأعمدة الأخرى بعد النقاط.
مثال 2: نقل عمود إلى الموضع الأخير
يوضح التعليمة البرمجية التالية كيفية نقل عمود معين في إطار البيانات إلى الموضع الأخير:
#move column 'points' to last position
df %>% select(-points, points)
player position rebounds points
1 to G 5 12
2 b F 7 15
3c F 7 19
4 d G 12 22
5th G 11 32
يخبر هذا الرمز dplyr بتحديد كافة الأعمدة باستثناء عمود النقطة، ثم تحديد عمود النقطة مرة أخرى. وهذا له تأثير نقل عمود النقاط إلى الموضع الأخير في إطار البيانات.
مثال 3: إعادة ترتيب أعمدة متعددة
يوضح التعليمة البرمجية التالية كيفية إعادة ترتيب أعمدة متعددة مرة واحدة بترتيب معين:
#change all column names to uppercase
df %>% select(rebounds, position, points, player)
rebounds position points player
1 5 G 12 a
2 7 F 15 b
3 7 F 19 c
4 12 G 22 d
5 11 G 32 e
مثال 4: إعادة ترتيب الأعمدة أبجديًا
يوضح التعليمة البرمجية التالية كيفية فرز الأعمدة أبجديًا:
#order columns alphabetically
df %>% select(order(colnames(.)))
player points position rebounds
1 to 12 G 5
2 b 15 F 7
3 c 19 F 7
4 d 22 G 12
5 th 32 G 11
مثال 5: ترتيب عكسي للأعمدة
يوضح التعليمة البرمجية التالية كيفية عكس ترتيب الأعمدة في إطار البيانات:
#reverse column order df %>% select(rebounds:player, everything() ) rebound points position player 1 5 12 G a 2 7 15 F b 3 7 19 F c 4 12 22 L d 5 11 32 G e
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة التحديد () هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في dplyr:
كيفية تحديد الأعمدة حسب الفهرس باستخدام dplyr
كيفية تحديد الأعمدة بالاسم باستخدام dplyr
كيفية إضافة أعمدة إلى إطار البيانات باستخدام dplyr