R语言-定量变量的统计描述(一)
完成数据的收集并经过初步整理后,我们将数据导入到R中,首先要考虑的是对各个变量进行统计描述。统计描述可以使人们对数据有一个大致的了解,为进一步的统计分析打下基础。从这次开始我们将学习如何对定量变量进行统计描述。
我们先来了解一些统计学基本知识:集中趋势和离散趋势是总体分布的两个重要特征,定量地描述数据的平均水平和变异程度可较全面地反映其分布特征。
描述集中趋势的统计指标对于定量变量,平均数是最重要的一个指标体系,常用于描述一组同质观察值的集中位置,反映一组观察值的平均水平。常用的平均数有3种——算术均数、中位数和众数。
算术均数简称均数(mean),适用于服从对称分布变量的平均水平描述。特别是对于正态分布或近似正态分布的变量,均数有非常重要的作用。
中位数(median)是指将原始观察值按大小排序后,位次居中的那个数值。适用于各种分布的变量,特别是偏峰分布的变量。
众数(mode)指样本中出现次数最多的数值。
描述变异程度的统计指标同一总体中不同个体间存在的差异称为变异(variation)。常用的描述变异程度的统计指标包括极差、四分位数间距、方差、标准差和变异系数。
极差(range),也称为全距,为最大值与最小值之差。
四分位数间距(inter-quartile range, Q),定义为上四分位数(upper quartile, P75)和下分位数间距(lower quartile, P25)之差。P75 和P25之间恰好包括总体中50%的个体观察值。Q可用于各种分布资料,特别是服从偏峰分布的变量,常把中位数和四分位数间距结合起来描述变量的平均水平和变异程度。
方差(variance)的意义是总体内所有观察值与总体均数差值的平方之和。同类资料比较时,方差越大意味着数据间离散程度越大,或者说变量的变异度越大。总体方差用σ2表示,但在实际应用中总体均数和总体中个体的数目常常是未知的,因此在抽样研究中常用样本方差估计总体方差。样本方差用S2表示。
标准差(standard deviation, SD)统计学中常用方差的算术平方根来表示变异度指标,用S表示。方差和标准差都适用于对称分布的变量,特别对服从正态分布或近似正态分布的变量,常把均数和标准差结合起来描述变量的分布特征。
变异系数(coefficient of variation, CV)主要用于不同变量间变异程度的比较,尤其是量纲不同变量间的比较。意义是变异的大小相对于其平均水平的百分比。
描述分布形态的统计指标
对于单峰分布的变量,可以用偏度系数和峰度系数描述分布的形态。
偏峰分布(coefficient of skewness, SKEW):取正值时,分布为正偏峰;取负值时,分布为负偏峰。
峰度系数(coefficient of kurtosis, KERT):取负值时,其分布较正态分布的峰平阔;取正值时,其分布较正态分布的峰尖峭。
基本知识了解完毕,接下来我们看看怎么在R中实现。
R语言中提供了很多基本数据集,这些数据集是可以直接加载使用的。这次我们使用women这个数据集作为示例进行实战。首先我们先来查看一下women数据集中所包含的指标。

函数attach()可以将数据集添加到R的搜索路径中。从上图我们可以看出women这个数据集中包含15个人的身高和体重的数据。接下来我们进行简单的统计描述。以体重为例:
描述集中趋势的统计指标在R中的实现

描述变异程度的统计指标在R中的实现

描述分布形态的统计指标在R中的实现(使用PerformanceAnalytics包)

除了使用单个函数分别进行统计描述外,我们还可以使用apply()函数。该函数的定义为:apply(X, MARGIN, FUN)参数列表:X:数组、矩阵、数据框MARGIN:按行计算或按按列计算,1表示按行,2表示按列FUN:自定义的调用函数,典型的函数有:mean, sd, var, min, max, median, length, range和quantile.举例:

也许有同学认为这样一个一个出结果比较麻烦,我们可以使用函数summary()进行数据的统计描述,该函数提供了最小值、最大值、四分位数和均数。

从上图可以看出我们使用summary(women)这个命令,可以对women这个数据集中的所有指标分别进行统计描述,当然我们也可以对相应的指标进行统计描述,如summary(height)和summary(weight)。
summary()只能提供五种统计指标的结果,如果想一次性得到更多的统计指标在R中怎么实现呢?在这里我们介绍一个很强大的包:fBasics,basicStates(x)命令提供16个统计量。

在描述性统计量的计算方面,R中的选择有很多,如pastecs包中的stat.desc()函数和psych包中的describe()函数,均能提供多种结果。有兴趣的同学可以去尝试使用
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!