R語言 平均值,中位數(shù)和模式

2022-06-16 15:54 更新

R中的統(tǒng)計分析通過使用許多內(nèi)置函數(shù)來執(zhí)行。 這些函數(shù)大多數(shù)是R基礎(chǔ)包的一部分。 這些函數(shù)將R向量作為輸入和參數(shù),并給出結(jié)果。

我們在本章中討論的功能是平均值,中位數(shù)和模式。

Mean平均值

通過求出數(shù)據(jù)集的和再除以求和數(shù)的總量得到平均值

函數(shù)mean()用于在R語言中計算平均值。

語法

用于計算R中的平均值的基本語法是 -

mean(x, trim = 0, na.rm = FALSE, ...)

以下是所使用的參數(shù)的描述 - 

  • x是輸入向量。

  • trim用于從排序向量的兩端丟棄一些觀察結(jié)果。

  • na.rm用于從輸入向量中刪除缺失值。

# Create a vector. 
x <- c(12,7,3,4.2,18,2,54,-21,8,-5)

# Find Mean.
result.mean <- mean(x)
print(result.mean)

當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -

[1] 8.22

應(yīng)用修剪選項

當(dāng)提供trim參數(shù)時,向量中的值被排序,然后從計算平均值中減去所需的觀察值。

當(dāng)trim = 0.3時,來自每端的3個值將從計算中減去以找到均值。

在這種情況下,排序的向量是(-21,-5,2,3,4.2,7,8,12,18,54),并且從用于計算平均值的向量中移除的值是(-21,-5,2) 從左邊和(12,18,54)從右邊。

# Create a vector.
x <- c(12,7,3,4.2,18,2,54,-21,8,-5)

# Find Mean.
result.mean <-  mean(x,trim = 0.3)
print(result.mean)

當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -

[1] 5.55

應(yīng)用NA選項

如果有缺失值,則平均函數(shù)返回NA。

要從計算中刪除缺少的值,請使用na.rm = TRUE。 這意味著去除NA值。

# Create a vector. 
x <- c(12,7,3,4.2,18,2,54,-21,8,-5,NA)

# Find mean.
result.mean <-  mean(x)
print(result.mean)

# Find mean dropping NA values.
result.mean <-  mean(x,na.rm = TRUE)
print(result.mean)

當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -

[1] NA
[1] 8.22

Median中位數(shù)

數(shù)據(jù)系列中的最中間值稱為中值。 在R語言中使用median()函數(shù)來計算此值。

語法

計算R語言中位數(shù)的基本語法是 -

median(x, na.rm = FALSE)

以下是所使用的參數(shù)的描述 - 

  • x是輸入向量。

  • na.rm用于從輸入向量中刪除缺失值。

# Create the vector.
x <- c(12,7,3,4.2,18,2,54,-21,8,-5)

# Find the median.
median.result <- median(x)
print(median.result)

當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -

[1] 5.6

Mode模式

模式是一組數(shù)據(jù)中出現(xiàn)次數(shù)最多的值。 Unike平均值和中位數(shù),模式可以同時包含數(shù)字和字符數(shù)據(jù)。

R語言沒有標(biāo)準(zhǔn)的內(nèi)置函數(shù)來計算模式。 因此,我們創(chuàng)建一個用戶函數(shù)來計算R語言中的數(shù)據(jù)集的模式。該函數(shù)將向量作為輸入,并將模式值作為輸出。

# Create the function.
getmode <- function(v) {
   uniqv <- unique(v)
   uniqv[which.max(tabulate(match(v, uniqv)))]
}

# Create the vector with numbers.
v <- c(2,1,2,3,1,2,3,4,1,5,5,3,2,3)

# Calculate the mode using the user function.
result <- getmode(v)
print(result)

# Create the vector with characters.
charv <- c("o","it","the","it","it")

# Calculate the mode using the user function.
result <- getmode(charv)
print(result)

當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -

[1] 2
[1] "it"

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號