كيفية تحديد صفوف dataframe بالاسم باستخدام dplyr


يمكنك استخدام بناء الجملة التالي لتحديد الصفوف في إطار البيانات بالاسم باستخدام dplyr:

 library (dplyr)

#select rows by name
df %>%
  filter(row. names (df) %in% c(' name1 ', ' name2 ', ' name3 '))

يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.

مثال: حدد الصفوف بالاسم باستخدام dplyr

لنفترض أن لدينا إطار البيانات التالي في R:

 #create data frame
df <- data. frame (points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#set row names
row. names (df) <- c('Mavs', 'Hawks', 'Cavs', 'Lakers', 'Heat')

#view data frame
df

       points assists rebounds
Mavs 99 33 30
Hawks 90 28 28
Cavs 86 31 24
Lakers 88 39 24
Heat 95 34 28

يمكننا استخدام الكود التالي لتحديد الصفوف التي يساوي اسم الصف فيها Hawks أو Cavs أو Heat:

 library (dplyr)

#select specific rows by name
df %>%
  filter(row. names (df) %in% c(' Hawks ', ' Cavs ', ' Heat '))

      points assists rebounds
Hawks 90 28 28
Cavs 86 31 24
Heat 95 34 28

لاحظ أن dplyr يُرجع فقط الصفوف التي توجد أسماؤها في المتجه الذي قدمناه إلى الدالة filter() .

لاحظ أيضًا أنه يمكنك استخدام علامة التعجب ( ! ) لتحديد جميع الصفوف التي ليست أسماؤها في متجه:

 library (dplyr)

#select rows that do not have Hawks, Cavs, or Heat in the row name
df %>%
  filter(!(row. names (df) %in% c(' Hawks ', ' Cavs ', ' Heat ')))

       points assists rebounds
Mavs 99 33 30
Lakers 88 39 24

لاحظ أن dplyr يُرجع فقط الصفوف التي لم تكن أسماؤها موجودة في المتجه الذي قدمناه إلى الدالة filter() .

مصادر إضافية

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

كيفية تصفية القيم الفريدة باستخدام dplyr
كيفية التصفية حسب شروط متعددة باستخدام dplyr
كيفية حساب عدد التكرارات في الأعمدة في R

Add a Comment

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