每当我们的数据中有NA时,我们使用na.rm=TRUE来获得平均值,众数等的正确结果。娜.rm是做什么的?我可以理解rm用于删除,我们甚至使用它来删除变量。但是我们为什么要把na写成小的呢?R 区分大小写?布尔值 TRUE 在这里有什么作用?
参数na.rm
提供了一种简单的方法,如果它们被编码为NA
,则从数据中删除缺失值。在基数R中,它的标准默认值是FALSE
,这意味着NA
不会被删除。
考虑以下具有 2 个元素的向量,其中一个元素是缺失值。
x <- c(1, NA)
现在,它的平均值是多少?
我们是否应该将所有非缺失值相加并除以其全长2?还是我们应该在删除NA
的后除以它的长度,只有 1?
sum(x, na.rm = TRUE)/length(x)
#[1] 0.5
sum(x, na.rm = TRUE)/length(x[!is.na(x)])
#[1] 1
如果使用mean
,则计算的是后者。
mean(x, na.rm = TRUE)
#[1] 1
na.rm
是许多函数中的参数之一(您给出了一些示例(。要获取有关函数参数的信息,请运行?function
。
例如,使用mean()
,运行:
?mean
为您提供所需的信息:
na.rm:一个逻辑值,指示在继续计算之前是否应去除 NA 值。
通过向此参数提供逻辑值(TRUE
或FALSE
(,您可以选择在运行函数时是否剥离NA。默认值(也由mean()
文档给出(为FALSE
。
是的:R 区分大小写。