统计软件 R 语言学习笔记 (7) 统计量
描述统计:统计量
在描述行统计中,除了统计图表,统计量可以定量的描述数据。本章介绍常见的统计量:均值、方差、标准差、中位数、四分位数、变异系数、IQR、极差、偏度、峰度、Q-Q 图。以及分类汇总函数 aggregate 。
代码和笔记存储在 GitHub 库 【持续更新中,建议 star!】
1 描述统计:统计量
定性变量:频数、比例
定量变量:集中信息、波动信息、形状信息
1.1 集中信息
1.1.1 样本均值
对于数据 $x_1,\ x_2,\ \cdots,\ x_n$ 的样本均值为:
缺点:均值容易受到极端值影响。
1 | mean(x) |
1.1.2 中位数
样本中位数是对原始数据排序,位于数据中心的数据。
假设有定量数据 $x1,\ x_2,\ \cdots,\ x_n$ ,定义排序后的数据 $x{(1)} \leq x{(2)} \leq \cdots \leq x{(n)}$ 。
优点:稳健,不容易受到极端值影响。
1 | median(x) |
1.1.3 示例
1 | finalgrades <- read.csv("finalgrades.csv") |
1.2 波动信息
1.2.1 方差/标准差
样本方差:反映了所有数据离中心的平均的平方距离
样本标准差:近似反映了所有数据离中心的平均距离
1 | sd(x) |
1.2.2 变异系数
变异系数 Coefficient of Variation ($CV$) :比较不同单位的数据的离散程度;比较单位相同而平均数相差较大的数据组资料的差异程度。
1 | 100 * sd(x) / mean(x) |
1.2.3 四分位间距/极差
四分位差 (Inter - Quartile Range, $IQR$) :中间 $50\%$ 数据的范围。
1 | IQR(x) |
极差 :所有数据的范围
1 | range(x) |
1.3 形状信息
1.3.1 偏度
总体偏度的定义
样本偏度的定义
偏度判断:
- 对称:Skewness = 0
- 右偏:Skewness > 0
- 左偏:Skewness < 0
1.3.2 峰度
峰度反应了峰部的尖度,总体峰度的定义:
样本峰度:
峰度判断:
- 正态分布:Kurtosis = 0
峰度越大,高峰分布:两端数据多(厚尾),中间数据少,且集中在均值附近。
Kurtosis > 0 ,与正态分布相比是高峰
1.3.3 R 语言实现
调用 moments
包:
1 | library("moments") |
【注意】:R 语言的
kurtosis()
函数没有进行- 3
操作。
1 | kurtosis(rnorm(10000)) # 没有减 3 |
1.3.4 Q-Q 图
Q-Q Plot :对于观测数据 $x1,\ x_2,\ \cdots,\ x_n$ 对其排序后得到 $x{(1)} \leq x{(2)} \leq \cdots \leq x{(n)}$ ,它们的概率为:
然后取出标准正态分布的分位数点 $F^{-1}(\frac{j - 0.375}{n + 0.25})$ 。绘制散点图:
若大致为线性关系/直线,则可以认为 $x_i$ 满足近似正态。
R 语言实现:
1 | x <- mydata[, 1] |
对于非正态的 Q-Q 图,有如下的例子:左边为右偏,右边为左偏
1.4 其他
1 | fivenum(x) # 5 个分位数 min, q1, median, q3, max |
1 | > fivenum(x) |
2 描述统计:分类汇总
2.1 aggregate 函数
格式
1 | aggregate(x ~ by, FUN, na.rm = T, data) |
参数
1 | x : 列名,或是列序号,多个使用 cbind() 组合 |
2.2 示例
例:按照 city
和 R
计算 minimumpay, maximumpay, logmeanpay
列的均值
1 | mydata <- read.csv("jobinfor201xE.csv", encoding = "utf-8") |
结果:
1 | city R minimumpay maximumpay logmeanpay |