描述性统计量
第一部分:使用R语言基本函数进行统计描述
R语言是为统计分析而生的,它提供了大量灵活而使用的统计功能,其中最基础的就是一些描述性统计量,主要包括求和、均值、最值、方差、标准差、分位数和范围。下面我们将在R语言中逐一学习一遍:
代码语言:javascript复制# 基本统计量示例
##创建相关变量
a <- c(1,2,3,NA,5) # 创建变量a
b <- c("red", "white", "red", "blue", NA) # 创建变量b
c <- c(TRUE,TRUE,TRUE,FALSE,TRUE) # 创建变量c
mydata <- data.frame(a,b,c) # 利用以创建的变量构建数据框
##基本统计量计算
mean(a) #由于有NA值,直接计算平均值返回的是NA
# [1] NA
mean(a,na.rm = T) #去除NA值后再计算平均值
#[1] 2.75
sum(a,na.rm = T) #去除NA值后再求和
#[1] 11
sd(a,na.rm = T) #去除NA值后再计算标准差
#[1] 1.707825
var(a,na.rm = T) #去除NA值后再计算方差
#[1] 2.916667
sqrt(var(a,na.rm = T)) #方差取平方根后就是标准差,计算结果和sd()一致
#[1] 1.707825
min(a,na.rm = T) #去除NA值后再计算最小值
#[1] 1
max(a,na.rm = T) #去除NA值后再计算最大值
#[1] 5
median(a,na.rm = T) #去除NA值后再计算中位数
# [1] 2.5
quantile(a,na.rm = T) #去除NA值后再计算分位数(后续统计部分会有讲解)
# 0% 25% 50% 75% 100%
# 1.00 1.75 2.50 3.50 5.00
range(a,na.rm = T) #去除NA值后再计算范围,实际上就是同时输出最小值和最大值
#[1] 1 5
除上述基本统计函数之外,R语言还提供大量其它统计函数,例如:
summary(a) ,它可以返回各个变量的最小值,最大值,25%分位数,中位数,75%分位数以及NA值的个数(它的计算是自动去除缺失值的)
代码语言:javascript复制b <- c("red", "white", "red", "blue", NA) # 创建变量b
c <- c(TRUE,TRUE,TRUE,FALSE,TRUE) # 创建变量c
mydata <- data.frame(a,b,c) # 利用以创建的变量构建数据框
summary(mydata)
第二部分:使用“psych”包进行统计描述
上面的例子都是使用R语言基本函数进行统计描述,实际上R语言里面还有一个很强大的统计包---“psych“,这个R包一开始是计量心理学(Psychometric)研究者开发的,但由于其功能丰富,使用方便,因而在各个领域几乎都有应用。
代码语言:javascript复制#使用“psych“包进行统计描述
library(psych) #加载R包
#trimmed是指切尾均值
# mad是median absolute deviation,也称绝对中位差
# skew是偏度(skewnes)
# kurtosis是峰度
describe.by(mydata)
在psych包中我们可以使用describe.by()函数直接获得数据的基本统计量,这里面有四个统计量trimmed(trimmed mean,切尾均值)、mad(median absolute deviation,绝对中位差)、skew(skewness,偏度)和kurtosis(峰度)我们可能会有点陌生,这个会在后面的内容中进行详细讲解。