كيفية حذف الصفوف التي تحتوي على بعض أو كل nas في r


في كثير من الأحيان قد ترغب في إزالة الصفوف التي تحتوي على بعض أو كل NAs (القيم المفقودة) في إطار البيانات في R.

يشرح هذا البرنامج التعليمي كيفية إزالة هذه الخطوط باستخدام Basic R وحزمة Tidyr . سنستخدم إطار البيانات التالي لكل من الأمثلة التالية:

 #create data frame with some missing values
df <- data.frame(points = c(12, NA, 19, 22, 32),
                 assists = c(4, NA, 3, NA, 5),
                 rebounds = c(5, NA, 7, 12, NA))

#view data frame
df

  points assists rebounds
1 12 4 5
2 NA NA NA
3 19 3 7
4 22 NA 12
5 32 5 NA

قم بإزالة NAs باستخدام Base R

يوضح التعليمة البرمجية التالية كيفية استخدام Complete.cases() لإزالة كافة الصفوف في إطار البيانات التي تحتوي على قيمة مفقودة في عمود :

 #remove all rows with a missing value in any column
df[ complete.cases (df),]

  points assists rebounds
1 12 4 5
3 19 3 7

يوضح التعليمة البرمجية التالية كيفية استخدام Complete.cases() لإزالة كافة الصفوف في إطار البيانات التي تحتوي على قيمة مفقودة في أعمدة محددة :

 #remove all rows with a missing value in the third column
df[ complete.cases (df[,3]),]

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

#remove all rows with a missing value in either the first or third column
df[ complete.cases (df[ , c(1,3)]),]

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

حذف NAs باستخدام Tidyr

يوضح التعليمة البرمجية التالية كيفية استخدام drop_na() من حزمة Tidyr لإسقاط كافة الصفوف في إطار بيانات يحتوي على قيمة مفقودة في عمود :

 #load tidyr package
library(tidyr)

#remove all rows with a missing value in any column
df %>% drop_na()

  points assists rebounds
1 12 4 5
3 19 3 7

يوضح التعليمة البرمجية التالية كيفية استخدام drop_na() من حزمة Tidyr لإسقاط كافة الصفوف في إطار بيانات يحتوي على قيمة مفقودة في أعمدة محددة :

 #load tidyr package
library(tidyr)

#remove all rows with a missing value in the third column
df %>% drop_na(rebounds)

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

يمكنك العثور على المزيد من دروس R هنا .

Add a Comment

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