计算最小值、最大值、四分位、数值型变量的均值,和因子向量和逻辑型向量的频数统计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])