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


يمكنك استخدام الطرق التالية من حزمة dplyr لإزالة الصفوف ذات قيم NA:

الطريقة الأولى: إزالة الصفوف ذات قيم NA في أي عمود

 library (dplyr)

#remove rows with NA value in any column
df %>%
  n / A. omit ()

الطريقة الثانية: إزالة الصفوف ذات قيم NA في أعمدة معينة

 library (dplyr)

#remove rows with NA value in 'col1' or 'col2'
df %>%
  filter_at(vars(col1, col2), all_vars( ! is. na (.)))

الطريقة الثالثة: إزالة الصفوف ذات قيم NA في عمود معين

 library (dplyr)

#remove rows with NA value in 'col1'
df %>%
  filter( ! is. na (col1))

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

 #create data frame with some missing values
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C'),
                 points=c(99, 90, 86, 88, NA),
                 assists=c(33, NA, 31, 39, 34),
                 rebounds=c(NA, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 NA
2 A 90 NA 28
3 B 86 31 24
4 B 88 39 24
5 C NA 34 28

الطريقة الأولى: إزالة الصفوف ذات قيم NA في أي عمود

يوضح الكود التالي كيفية إزالة الصفوف ذات قيم NA في أي عمود في إطار البيانات:

 library (dplyr)

#remove rows with NA value in any column
df %>%
  n / A. omit ()

  team points assists rebounds
3 B 86 31 24
4 B 88 39 24

الصفان الوحيدان المتبقيان هما الصفان اللذان لا يحتويان على أي قيم NA في أي عمود.

الطريقة الثانية: إزالة الصفوف ذات قيم NA في أعمدة معينة

يوضح الكود التالي كيفية إزالة الصفوف ذات قيم NA في أي عمود في إطار البيانات:

 library (dplyr)

#remove rows with NA value in 'points' or 'assists' columns
df %>%
  filter_at(vars(points, assists), all_vars( ! is. na (.)))

  team points assists rebounds
1 A 99 33 NA
2 B 86 31 24
3 B 88 39 24

الصفوف الوحيدة المتبقية هي تلك التي لا تحتوي على أي قيم NA في أعمدة “النقاط” أو “المساعدات”.

الطريقة الثالثة: إزالة الصفوف ذات قيم NA في عمود معين

يوضح الكود التالي كيفية إزالة الصفوف ذات قيم NA في عمود معين من إطار البيانات:

 library (dplyr)

#remove rows with NA value in 'points' column
df %>%
  filter( ! is. na (dots))

  team points assists rebounds
1 A 99 33 NA
2 A 90 NA 28
3 B 86 31 24
4 B 88 39 24

الصفوف الوحيدة المتبقية هي تلك التي لا تحتوي على أي قيمة NA في عمود “النقاط”.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية إجراء عمليات شائعة أخرى باستخدام dplyr:

dplyr: كيفية تصفية الصفوف التي تحتوي على سلاسل معينة
dplyr: كيفية استبدال قيم NA بالصفر
dplyr: كيفية استخدام مرشح “غير مضمن”.

Add a Comment

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