كيفية إزالة الحرف الأول من السلاسل باستخدام dplyr
يمكنك استخدام بناء الجملة الأساسي التالي في dplyr لإزالة الحرف الأول من كل سلسلة في عمود معين:
library (dplyr) df_new <- df %>% mutate(across(c(' my_column '), substr, 2 , nchar(my_column)))
يقوم بناء الجملة هذا بإزالة الحرف الأول من كل سلسلة من العمود المسمى my_column .
لاحظ أننا نستخدم الدالة substr() لاستخراج السلسلة الفرعية من الحرف الثاني لكل سلسلة حتى طول السلسلة.
هذا له تأثير إزالة الحرف الأول من السلسلة.
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: قم بإزالة الحرف الأول من السلاسل باستخدام dplyr
لنفترض أن لدينا إطار البيانات التالي في R:
#create data frame df <- data. frame (team=c('XMavs', 'XPacers', 'XHawks', 'XKings', 'XNets', 'XCeltics'), points=c(104, 110, 134, 125, 114, 124)) #view data frame df team points 1 XMavs 104 2 XPacers 110 3XHawks 134 4 XKings 125 5 XNets 114 6 XCeltics 124
لنفترض أننا نريد إزالة الحرف الأول من كل سلسلة في عمود الفريق .
يمكننا استخدام بناء الجملة التالي للقيام بذلك:
library (dplyr) #remove first character from each string in 'team' column df_new <- df %>% mutate(across(c(' team '), substr, 2 , nchar(team))) #view updated data frame df_new team points 1 Mavs 104 2 Pacers 110 3 Hawks 134 4 Kings 125 5 Nets 114 6 Celtics 124
لاحظ أنه تمت إزالة الحرف الأول من كل سلسلة في عمود الفريق .
لاحظ أنه يتم استخدام الدالة nchar() لحساب إجمالي عدد الأحرف في السلسلة.
لذلك، نستخدم الدالة substr() لاستخراج السلسلة الفرعية من الحرف الثاني إلى الحرف الأخير من كل سلسلة، وهو ما يعادل إزالة الحرف الأول من كل سلسلة.
ملاحظة : إذا كنت تريد إزالة الحرف الأول من سلاسل أعمدة متعددة، فما عليك سوى تضمين أسماء أعمدة متعددة في الدالة cross() .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في dplyr:
كيفية حذف الصفوف باستخدام dplyr
كيفية تحديد الأعمدة حسب الفهرس باستخدام dplyr
كيفية تصفية الصفوف التي تحتوي على سلسلة معينة باستخدام dplyr