كيفية حذف الصفوف مع na في عمود معين في r


يمكنك استخدام إحدى الطرق الثلاث التالية لإزالة الصفوف التي تحتوي على NA في عمود محدد لإطار البيانات في R:

 #use is.na() method
df[!is. na (df$col_name),]

#use subset() method
subset(df, !is. na (col_name))

#use tidyr method
library (tidyr)
df %>% drop_na(col_name)

لاحظ أن كل من هذه الطرق سوف تنتج نفس النتائج.

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

 #create data frame
df <- data. frame (a = c(NA, 14, 19, 22, 26),
                 b = c(14, NA, 9, NA, 5),
                 c = c(45, 56, 54, 57, 59))

#view data frame
df

ABC
1 NA 14 45
2 14 NA 56
3 19 9 54
4 22 NA 57
5 26 5 59

الطريقة الأولى: إزالة الصفوف التي تحتوي على NA باستخدام is.na()

يوضح الكود التالي كيفية إزالة الصفوف من إطار البيانات بقيم NA في عمود معين باستخدام طريقة is.na() :

 #remove rows from data frame with NA values in column 'b'
df[!is. na (df$b),]

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

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

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

 #remove rows from data frame with NA values in column 'b'
subset(df, !is. na (b))

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

الطريقة الثالثة: إسقاط الصفوف باستخدام NA باستخدام drop_na()

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

 library (tidyr)

#remove rows from data frame with NA values in column 'b'
df %>% drop_na(b)

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

لاحظ أن كل طريقة من الطرق الثلاث أعطت نفس النتيجة.

ملاحظة: يمكنك العثور على الوثائق الكاملة عبر الإنترنت لطريقة drop_na() هنا .

مصادر إضافية

كيفية تطبيق وظيفة على كل صف من إطار البيانات في R
كيفية استرداد أرقام الأسطر في R
كيفية إضافة صفوف إلى إطار البيانات في R

Add a Comment

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