一、基本概念
描述性统计分析指的是对数据集中每一个变量的基本情况进行统计描述,包括中心位置、离散程度、分布形态等。在R语言中,我们可以使用多种函数进行描述性统计分析,包括summary()、mean()、median()、sd()等。
下面以mtcars数据集为例,展示各个函数的用法:
data(mtcars) summary(mtcars) # 总体概览 mean(mtcars$mpg) # 平均值 median(mtcars$mpg) # 中位数 sd(mtcars$mpg) # 标准差
二、中心位置的度量
中心位置度量的指标包括均值、中位数和众数。均值计算简单,但容易受到极端值的影响;中位数则比较鲁棒,能更好地反映数据集的集中程度。在R语言中,我们可以使用mean()和median()函数计算均值和中位数。
mean(mtcars$mpg) # 计算mpg变量的均值 median(mtcars$mpg) # 计算mpg变量的中位数
众数代表出现次数最多的数值,可以使用mode()函数计算,但R语言中并不存在这个函数。我们可以自己写一个函数来计算众数:
mode <- function(x) { ux <- unique(x) ux[which.max(tabulate(match(x, ux)))] } mode(mtcars$mpg) # 计算mpg变量的众数
三、离散程度的度量
离散程度度量的指标包括极差、方差、标准差和变异系数。极差是最大值与最小值的差,而方差、标准差和变异系数则分别衡量着数据集的离散程度。在R语言中,我们可以使用range()、var()、sd()和cv()函数计算这些指标。
range(mtcars$mpg) # 计算mpg变量的极差 var(mtcars$mpg) # 计算mpg变量的方差 sd(mtcars$mpg) # 计算mpg变量的标准差 cv <- function(x) sd(x)/mean(x)*100 cv(mtcars$mpg) # 计算mpg变量的变异系数
四、分布形态的度量
分布形态的度量指标包括偏度和峰度。偏度旨在衡量数据分布的对称性,取值范围为-1至1,正值意味着数据偏右,而负值意味着数据偏左;而峰度则是衡量数据分布的峰态程度,取值范围为0至正无穷。在R语言中,我们可以使用skewness()和kurtosis()函数计算偏度和峰度。
library(moments) skewness(mtcars$mpg) # 计算mpg变量的偏度 kurtosis(mtcars$mpg) # 计算mpg变量的峰度
五、异常值的检测与处理
异常值(outliers)指的是与数据集中大部分数值差异很大的数值。在描述性统计分析中,我们需要尽可能地排除异常值的干扰,以更好地反映数据集的真实情况。在R语言中,我们可以使用outlierTest()函数、boxplot()函数和hist()函数来检测和处理异常值。
library(car) outlierTest(mtcars[, 1:6]) # 检测异常值 boxplot(mtcars$mpg) # 画出mpg变量的箱线图 hist(mtcars$mpg) # 画出mpg变量的直方图