كيفية استخدام na.rm في r (مع أمثلة)


يمكنك استخدام الوسيطة na.rm=TRUE لاستبعاد القيم المفقودة عند حساب الإحصائيات الوصفية في R.

 #calculate mean and exclude missing values
mean(x, na. rm = TRUE )

#calculate sum and exclude missing values 
sum(x, na. rm = TRUE )

#calculate maximum and exclude missing values 
max(x, na. rm = TRUE )

#calculate standard deviation and exclude missing values 
sd(x, na. rm = TRUE )

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

مثال 1: استخدام na.rm مع المتجهات

لنفترض أننا نحاول حساب المتوسط والمجموع والحد الأقصى والانحراف المعياري للمتجه التالي في R الذي يحتوي على قيم مفقودة:

 #define vector with some missing values
x <- c(3, 4, 5, 5, 7, NA, 12, NA, 16)

mean(x)

[1] NA

sum(x)

[1] NA

max(x)

[1] NA

sd(x)

[1] NA

تقوم كل من هذه الوظائف بإرجاع قيمة NA .

لاستبعاد القيم المفقودة عند إجراء هذه الحسابات، يمكننا ببساطة تضمين الوسيطة na.rm = TRUE على النحو التالي:

 #define vector with some missing values
x <- c(3, 4, 5, 5, 7, NA, 12, NA, 16)

mean(x, na. rm = TRUE )

[1] 7.428571

sum(x, na. rm = TRUE )

[1] 52

max(x, na. rm = TRUE )

[1] 16

sd(x, na. rm = TRUE )

[1] 4.790864

لاحظ أننا تمكنا من إجراء كل عملية حسابية بنجاح مع استبعاد القيم المفقودة.

مثال 2: استخدام na.rm مع إطارات البيانات

لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على قيم مفقودة:

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, NA, 3, 2),
                 var3=c(3, 3, NA, 6, 8),
                 var4=c(1, 1, 2, 8, NA))

#view data frame
df

  var1 var2 var3 var4
1 1 7 3 1
2 3 7 3 1
3 3 NA NA 2
4 4 3 6 8
5 5 2 8 NA

يمكننا استخدام الدالة application() لحساب الإحصائيات الوصفية لكل عمود في إطار البيانات واستخدام الوسيطة na.rm = TRUE لاستبعاد القيم المفقودة عند إجراء هذه الحسابات:

 #calculate mean of each column
apply(df, 2, mean, na. rm = TRUE )

var1 var2 var3 var4 
3.20 4.75 5.00 3.00 

#calculate sum of each column
apply(df, 2, sum, na. rm = TRUE )

var1 var2 var3 var4 
  16 19 20 12 

#calculate max of each column
apply(df, 2, max, na. rm = TRUE )

var1 var2 var3 var4 
   5 7 8 8 

#calculate standard deviation of each column
apply(df, 2, sd, na. rm = TRUE )

    var1 var2 var3 var4 
1.483240 2.629956 2.449490 3.366502

ومرة أخرى، تمكنا من إكمال كل عملية حسابية بنجاح مع استبعاد القيم المفقودة.

مصادر إضافية

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

كيفية استخدام is.null في R
كيفية استخدام na.omit في R
كيفية استخدام is.na في R

Add a Comment

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