كيفية حذف الصفوف مع 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