كيفية إعادة تسمية أعمدة متعددة باستخدام dplyr
يمكنك استخدام الوظائف التالية من حزمة dplyr في R لإعادة تسمية أعمدة متعددة في إطار البيانات:
الطريقة الأولى: استخدام إعادة التسمية ()
df %>% rename(new1 = old1, new2 = old2)
الطريقة الثانية: استخدم rename_with()
new <- c(' new1 ', ' new2 ') old <- c(' old1 ', ' old2 ') df %>% rename_with(~ new, all_of(old))
كلا الطريقتين تنتج نفس النتيجة.
توضح الأمثلة التالية كيفية استخدام كل من هذه الطرق عمليًا مع إطار البيانات التالي في R:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), dots=c(22, 34, 30, 12, 18), assists=c(7, 9, 9, 12, 14)) #view data frame df team points assists 1 to 22 7 2 B 34 9 3 C 30 9 4 D 12 12 5 E 18 14
مثال 1: إعادة تسمية أعمدة متعددة باستخدام rename()
يوضح التعليمة البرمجية التالية كيفية استخدام وظيفة إعادة التسمية () لإعادة تسمية الفريق وأعمدة النقاط في إطار البيانات:
library (dplyr)
#rename team and points columns
df2 <- df %>% rename(team_new = team, points_new = points)
#view updated data frame
df2
team_new points_new assists
1 to 22 7
2 B 34 9
3 C 30 9
4 D 12 12
5 E 18 14
تمت إعادة تسمية أعمدة الفرق والنقاط بينما ظل عمود التمريرات الحاسمة كما هو.
المثال 2: إعادة تسمية أعمدة متعددة باستخدام rename_with()
يوضح التعليمة البرمجية التالية كيفية استخدام الدالة rename_with() لإعادة تسمية الفريق وأعمدة النقاط في إطار البيانات:
library (dplyr)
#define new names
new <- c(' team_new ', ' points_new ')
#define old names to replace
old <- c(' team ', ' points ')
#rename old names with new names
df2 <- df %>% rename_with(~ new, all_of(old))
#view updated data frame
df2
team_new points_new assists
1 to 22 7
2 B 34 9
3 C 30 9
4 D 12 12
5 E 18 14
تمت إعادة تسمية أعمدة الفرق والنقاط بينما ظل عمود التمريرات الحاسمة كما هو.
لاحظ أن هذه الطريقة قد تكون أسهل في الاستخدام عندما يكون لديك قائمة طويلة بأسماء الأعمدة التي تريد استبدالها.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى باستخدام dplyr:
كيفية تحديد الأعمدة بالاسم باستخدام dplyr
كيفية تحديد الأعمدة حسب الفهرس باستخدام dplyr
كيفية استخدام Select_if مع شروط متعددة في dplyr