统计学(四)——描述性统计指标计算
描述性统计指标是一组用于总结和解释数据特征的基本工具,广泛应用于各类数据分析中,主要包括集中趋势、离散趋势和分布情况三个方面的指标。通过这些指标,描述性统计为我们提供了对数据整体结构、波动性和形态的全面理解,奠定了深入分析和推断的基础。
一、描述性统计指标
描述性分析就是用少数几个数值(比如平均值、中位数等)描述一系列复杂数据所表达的信息,比如描述数据的整体分布情况、波动情况、数据异常情况。描述性统计指标大致可分为三类:集中趋势指标、离散趋势指标和分布形态指标。
1.1 集中趋势指标
①众数:众数是值指出现次数最多的那个变量值。
②中位数:中位数是样本数据升序排列后的最中间的数值,如果数据偏离较大,一般用中位数描述整体水平情况。从中位数的计算方法可以看出,它和每个数据的位置有关系,所以如果有极端值出现,无论是特别大或特别小的极端值,都会因为对所有样本数据排序的这个动作,而被排列到某个数列的两端去,它不会有机会被排序到中间位置,而中位数是最中间位置的数,所以极端值不会影响到中位数,这样当有极端值出现,我们无法用平均值很好的描述数据情况,就可以使用中位数。
③平均数:平均数又称均值,是最常用的一个数据代表值,平均数既可以描述一组数据本身的整体平均情况,也可以用来作为不同组数据比较的一个标准。根据样本数据的不同格式,这里介绍两种常见的算术平均数的计算方法,一种是简单算术平均数,另一种是加权算术平均数。我们都知道在进行数据分析时,通常有两种数据格式。一种是常规格式(非加权格式),另外一种是加权数据格式。
1.2 离散趋势
①极差(全距):极差的计算很简单,极差等于最大值减最小值,因为计算简单,概念清晰,所以应用比较广泛。
②四分位数:四分位数是把全部数据从小到大排列并分成四等份,处于三个分割点位置的数值,即为四分位数。上四分位数(数据从小到大排列排在第75%的数字,即最大的四分位数);下四分位数(数据从小到大排列排在第25%位置的数字,即最小的四分位数);中间的四分位数即为中位数。
四分位数是指在把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值,分割后我们会通过5个数值来描述数据的整体分布情况。下界:最小值,即第0%位置的数值;下四分位数:Q1,即第25%位置的数值;中位数:Q2,即第50%位置的数值;上四分位数:Q3,即第75%位置的数值;上界:最大值,即第100%位置的数值。优点:可以用来对比不同类别数据的整体情况,还可以识别出可能的异常值。
③方差与标准差:方差是每个数据值与全体数据的平均数差的平方的平均数。标准差是对方差开方。方差与标准方差与标准差反映一组数据的平均离散水平。方差小,表示数据集比较集中,波动性小,方差大,表示数据集比较分散,波动性大。
④变异系数:也叫离散系数,是标准差和平均值的比值。用于观察指标单位不同时,如身高与体重的变异程度的比较:或均数相差较大时,如儿童身高与成人身高变异程度的比较。变异系数大,说明数据的离散程度大。
1.3 分布趋势
①峰度:描述正态分布中曲线峰顶尖哨程度的指标。峰度系数>0,则两侧极端数据较少,比正太分布更高更瘦,呈尖哨峰分布;峰度系数<0,则两侧极端数据较多,比正态分布更矮更胖,呈平阔峰分布。
②偏度:以正态分布为标准描述数据对称性的指标。偏度系数=0,则分布对称;偏度系数>0,则频数分布的高峰向左偏移,长尾向右延伸,呈正偏态分布;偏度系数<0,则频数分布的高峰向右偏移,长尾向左延伸,呈负偏态分布。
1.4 指标的正态分布解释
描述性统计的三类指标——集中趋势、离散趋势和分布情况,都是以标准正态分布为标杆,从而赋予这些指标更深刻的意义。标准正态分布具有对称、单峰、钟形曲线的特征,许多数据分布都可以通过正态分布作为近似模型,因此,统计学中的这些指标往往是基于标准正态分布进行推导和解释的。
集中趋势 描述的是数据的中心位置,即数据分布的“重心”在哪里。常见的集中趋势指标包括均值、中位数和众数。在正态分布中,均值、中位数和众数都重合于分布的中心位置,这反映了数据分布的对称性和一致性。因此,正态分布为这些集中趋势指标提供了标准模型,帮助我们理解数据中心的含义。现实中,如果数据分布接近正态分布,均值便能较好地代表数据的中心,而中位数和众数提供了其他角度的补充。
离散趋势 则衡量数据的波动性或分散程度。常用的离散趋势指标包括方差、标准差、全距等。在标准正态分布中,标准差定义了数据围绕均值波动的程度,它决定了分布的“宽度”或“紧致性”。正态分布的曲线形状取决于标准差,标准差越小,曲线越陡峭;标准差越大,曲线越平缓。因此,正态分布为方差和标准差提供了清晰的几何解释:即数据在均值周围散布的平均程度。通过标准正态分布,标准差成为衡量数据波动的基准单位,这也是我们使用“标准化”手段比较不同数据集波动性的原因。
分布情况 则描述数据的形状,尤其是它是否对称、峰度如何等。偏度和峰度是最常见的分布形状指标。偏度反映了分布的对称性,而峰度则反映了分布的尖锐程度。在标准正态分布中,偏度为零,表示分布完全对称;峰度值为3(常使用“过峰度”来表示相对于正态分布的偏差),表示分布的峰形与正态分布一致。偏度和峰度的数值不同,意味着数据分布的形状偏离正态分布,例如,正偏或负偏意味着数据的分布向某一侧倾斜,峰度变化则意味着分布的“胖瘦”。
描述性统计的三类指标都是以标准正态分布为基准定义和解释的,充分凸显了正态分布标准的内涵。
正态分布不仅是统计学中极具理论价值的模型,也是现实中广泛应用的工具。当数据接近正态分布时,这些指标有助于深入理解数据的分布特征;而当数据偏离正态分布时,指标的数值变化则提供了关于数据特征的进一步信息。例如,较高的标准差提示了更大的数据波动性,偏斜的偏度则意味着分布不对称。这种基于正态分布的统计框架,使得描述性统计成为探索和分析数据的重要工具。
二、描述性指标计算
library(psych)
head(mtcars)
describe(mtcars$mpg) #描述性统计量
describe(mtcars)
describe(mtcars)
vars n mean sd median trimmed mad min max range skew kurtosis se
mpg 1 32 20.09 6.03 19.20 19.70 5.41 10.40 33.90 23.50 0.61 -0.37 1.07
cyl 2 32 6.19 1.79 6.00 6.23 2.97 4.00 8.00 4.00 -0.17 -1.76 0.32
disp 3 32 230.72 123.94 196.30 222.52 140.48 71.10 472.00 400.90 0.38 -1.21 21.91
hp 4 32 146.69 68.56 123.00 141.19 77.10 52.00 335.00 283.00 0.73 -0.14 12.12
drat 5 32 3.60 0.53 3.70 3.58 0.70 2.76 4.93 2.17 0.27 -0.71 0.09
wt 6 32 3.22 0.98 3.33 3.15 0.77 1.51 5.42 3.91 0.42 -0.02 0.17
qsec 7 32 17.85 1.79 17.71 17.83 1.42 14.50 22.90 8.40 0.37 0.34 0.32
vs 8 32 0.44 0.50 0.00 0.42 0.00 0.00 1.00 1.00 0.24 -2.00 0.09
am 9 32 0.41 0.50 0.00 0.38 0.00 0.00 1.00 1.00 0.36 -1.92 0.09
gear 10 32 3.69 0.74 4.00 3.62 1.48 3.00 5.00 2.00 0.53 -1.07 0.13
carb 11 32 2.81 1.62 2.00 2.65 1.48 1.00 8.00 7.00 1.05 1.26 0.29
统计量结果包括:非缺失值的数量、平均数、标准差、中位数、截尾均值、绝对中位差、最小值、最大值、值域、偏度、峰度和平均值的标准误。
myvars <- c("mpg","hp","wt")
summary(mtcars[myvars])
summary(mtcars[myvars])
mpg hp wt
Min. :10.40 Min. : 52.0 Min. :1.513
1st Qu.:15.43 1st Qu.: 96.5 1st Qu.:2.581
Median :19.20 Median :123.0 Median :3.325
Mean :20.09 Mean :146.7 Mean :3.217
3rd Qu.:22.80 3rd Qu.:180.0 3rd Qu.:3.610
Max. :33.90 Max. :335.0 Max. :5.424
aggregate(mtcars[myvars],by=list(am=mtcars$am),mean)
am mpg hp wt
1 0 17.14737 160.2632 3.768895
2 1 24.39231 126.8462 2.411000
import numpy as np
from scipy import stats
import seaborn as sns
# 加载seaborn自带的数据集,如 "iris"
data = sns.load_dataset('iris')['sepal_length'].to_numpy() # 使用sepal_length作为示例数据
# 1. 均值 (Mean)
mean = np.mean(data)
# 2. 中位数 (Median)
median = np.median(data)
# 3. 众数 (Mode)
mode = stats.mode(data)[0][0]
# 4. 方差 (Variance)
variance = np.var(data, ddof=1) # ddof=1 表示样本方差
# 5. 标准差 (Standard Deviation)
std_dev = np.std(data, ddof=1)
# 6. 偏度 (Skewness)
skewness = stats.skew(data)
# 7. 峰度 (Kurtosis)
kurtosis = stats.kurtosis(data)
# 8. 极值 (Min & Max)
min_value = np.min(data)
max_value = np.max(data)
# 9. 全距 (Range)
range_value = np.ptp(data)
# 10. 均值的标准误差 (Standard Error of Mean)
std_error_mean = stats.sem(data)
# 打印结果,并将每个指标保留两位小数
print(f"Mean: {mean:.2f}")
print(f"Median: {median:.2f}")
print(f"Mode: {mode:.2f}")
print(f"Variance: {variance:.2f}")
print(f"Standard Deviation: {std_dev:.2f}")
print(f"Skewness: {skewness:.2f}")
print(f"Kurtosis: {kurtosis:.2f}")
print(f"Min: {min_value:.2f}, Max: {max_value:.2f}")
print(f"Range: {range_value:.2f}")
print(f"Standard Error of Mean: {std_error_mean:.2f}")
三、描述性指标与中心距的呼应
在统计学中,中心矩(central moments)是衡量数据分布相对于均值的偏离程度的指标。不同阶的中心矩描述了数据分布的不同特性,帮助我们更准确地刻画数据的形态。从平均数到标准差,再到偏度和峰度,这些都是中心矩的具体应用。通过理解中心矩的含义,我们可以更清晰地描述数据分布的趋势和特性。
一阶中心矩:平均数。严格来说,一阶中心矩为零,因为它表示数据点与自身均值的差异(即每个数据点减去均值后,所有差异的平均值)。然而,均值本身作为集中趋势的核心指标,往往也与一阶矩的概念联系在一起,尽管它不是严格意义上的中心矩。均值反映了数据的中心位置,正态分布的均值位于分布的对称中心,是数据分布的平衡点。
二阶中心矩:方差与标准差。二阶中心矩即方差(Variance),它是每个数据点与均值之间差异的平方的平均值,反映了数据的离散程度。方差描述了数据分布的扩展性,即数据点距离均值的平均距离的平方。标准差是方差的平方根,由于它与原始数据的单位一致,因此更常用于表示数据的波动程度。
三阶中心矩:偏度。三阶中心矩即偏度(Skewness),它衡量数据分布的对称性。偏度的值表示数据在均值两侧是否对称分布。若偏度为零,说明数据完全对称,即正态分布;偏度为正则说明数据向右倾斜(右尾较长),偏度为负表示数据向左倾斜(左尾较长)。偏度的提出是为了评估数据的偏斜程度,帮助我们判断数据分布是否偏离对称性。它尤其在检测数据是否符合正态分布时非常有用。例如,在偏态分布下,偏度显著偏离零,这表明数据集中在分布的一侧,极端值的出现频率可能较高。
四阶中心矩:峰度。四阶中心矩即峰度(Kurtosis),用于衡量数据分布的尖锐程度。它描述了数据在均值附近的集中程度。正态分布的峰度为3,表示分布的峰值既不太尖也不太平。大于3的峰度表示重尾分布(也称为尖峰分布),即在均值附近的数据较为集中,且有较多的极端值;小于3的峰度表示数据分布较为平坦,远离均值的数据较多。通过峰度,我们可以了解数据在中心区域的集中程度和分布的厚尾特性。它对极端值的敏感性使得它在金融、风险管理等领域得到了广泛应用,帮助我们判断数据是否容易产生极端波动。
任意一个分布函数可以通过它的各阶矩,特别是中心矩,以泰勒级数的形式展开。这意味着,如果我们能够计算出一个分布的各阶中心矩,我们就能得到分布函数在某个点附近的近似表达。各阶中心矩反映了数据的不同特性,低阶矩(如均值、方差)往往提供了数据的基本信息,而高阶矩(如偏度、峰度)则进一步揭示了数据分布中的细节。通过泰勒展开,我们可以将这些不同的特性逐步叠加,从而得到分布函数的整体描述。虽然高阶矩可能对分布函数的影响较小,但它们提供了数据的极端特性和细微差别。通过一阶到四阶的中心矩,我们可以全面描述数据分布的态势。一阶中心矩即均值,展示数据的集中趋势;二阶中心矩(方差与标准差)量化了数据的离散性;三阶中心矩(偏度)衡量了分布的对称性,而四阶中心矩(峰度)则描述了分布的尖锐程度。这些中心矩不仅帮助我们从不同维度理解数据分布,还为数据分析、建模和推断提供了重要依据。
总结
描述性统计是数据分析中最基础的工具之一,旨在通过简洁的指标对数据集进行总结和描述。它帮助我们从大量数据中提取关键特征,概括性地展现数据的主要特性。描述性统计通常分为三类指标:集中趋势、离散趋势和分布情况。
集中趋势指标如均值、中位数和众数,用来揭示数据的中心位置。均值反映了数据的整体水平,中位数提供了数据排序后的中间值,而众数则展示了最常出现的数值。这些指标为我们提供了数据在何处“集中”的直观认识。
离散趋势指标则衡量数据的波动性,常见的有方差、标准差和全距。方差和标准差揭示了数据点如何围绕均值分布,标准差越大,数据的波动性就越高。全距则展示了数据中最大值与最小值的差距,帮助我们判断数据的分散程度。
分布情况指标如偏度和峰度,反映了数据的形状特性。偏度衡量数据的对称性,判断其左右倾斜的程度;峰度则描述分布的尖锐程度或尾部的厚度,揭示数据的集中或分散情况。
即便在大数据和复杂数据分析的时代,描述性统计依然是不可或缺的工具。它为深入的分析奠定基础,帮助我们快速识别数据的基本结构和趋势,指导后续的建模和推断。