計算最小值、最大值、四分位、數值型變量的均值,和因子向量和邏輯型向量的頻數統計api
mt <- mtcars[c("mpg", "hp", "wt", "am")] summary(mt)
計算所選擇的任意描述性統計量app
sapply(x,FUN,options)
x:是你的數據框(或矩陣)函數
FUN:爲一個任意的函數spa
options:指定了options,他們將被傳遞給fFUNcode
mystats <- function(x, na.omit=FALSE){ if (na.omit) x <- x[!is.na(x)] m <- mean(x) n <- length(x) s <- sd(x) skew <- sum((x-m)^3/s^3)/n kurt <- sum((x-m)^4/s^4)/n - 3 return(c(n=n, mean=m, stdev=s, skew=skew, kurtosis=kurt)) } myvars <- c("mpg", "hp", "wt") sapply(mtcars[myvars], mystats)
pastecs包中的stat.desc()函數,計算描述性統計,格式爲:orm
stat.desc(x,basic = TRUE,desc =TRUE,norm=FALSE,p=0.95)
x:一個數據框或時間序列it
basic:=TRUE(默認值),則計算全部值、空值、缺失值的數量,以及最小值、最大值、值域,還有總和io
desc:=TRUE(默認值),則計算中位數、平均數、平均數的標準誤、平均數置信度爲95%的置信區間、方差、標準差以及變異係數ast
norm:=TRUE(非默認),返回正態分佈統計量,包括偏度和峯度(以及她們的統計顯著程度)和Shapiro-Wilk正態檢驗結果function
p:p值來計算平均數的置信區間(默認置信度爲0.95)
例
> library(pastecs) > myvars <- c("mpg", "hp", "wt") > stat.desc(mtcars[myvars]) mpg hp wt nbr.val 32.0000000 32.0000000 32.0000000 nbr.null 0.0000000 0.0000000 0.0000000 nbr.na 0.0000000 0.0000000 0.0000000 min 10.4000000 52.0000000 1.5130000 max 33.9000000 335.0000000 5.4240000 range 23.5000000 283.0000000 3.9110000 sum 642.9000000 4694.0000000 102.9520000 median 19.2000000 123.0000000 3.3250000 mean 20.0906250 146.6875000 3.2172500 SE.mean 1.0654240 12.1203173 0.1729685 CI.mean.0.95 2.1729465 24.7195501 0.3527715 var 36.3241028 4700.8669355 0.9573790 std.dev 6.0269481 68.5628685 0.9784574 coef.var 0.2999881 0.4674077 0.3041285
計算非缺失值的數量、平均數、標準差、中位數、截尾均值、絕對中位差、最小值、最大值、值域、偏度、峯度、和平均值的標準誤
library(psych) myvars <- c("mpg", "hp", "wt") describeBy(mtcars[myvars], list(am=mtcars$am))
注
psych包中有describe()而Hmisc包中也存在describe,若是被調用,則最後載入的程序包會被使用
library(Hmisc) myvars <- c("mpg", "hp", "wt") describe(mtcars[myvars])