Stata统计分析从入门到精通
上QQ阅读APP看书,第一时间看更新
 Stata统计分析从入门到精通

2.2 分类变量描述统计

2.2.1 单个分类变量的汇总

下载资源:\video\第2章\…

下载资源:\sample\第2章\数据2C

与前面提到的定距变量不同,分类变量的数值只代表观测值所属的类别,不代表其他任何含义。因此,对分类变量的描述统计方法是观察其不同类别的频数或者百分数。本节将介绍单个分类变量的汇总在示例中的应用。

关于单个分类变量的汇总,常用到tabulate操作命令,该命令的语法格式为:

tabulate varname [if] [in] [weight] [,tabulate1_options]

tabulate命令生成变量频率计数的单向表,varname为变量,[if]为条件表达式,[in]用于设置样本范围,[weight]用于设置权重,[,tabulate1_options]用于设置可选项。[,tabulate1_options]可选项及其含义如表2.5所示。

表2.5 [,tabulate1_options]可选项及其含义

本例中我们使用的数据集来自“数据2C”数据文件,其中有两个变量,分别为gender和pass,如图2.16所示。

图2.16 “数据2C”中的数据内容

打开上述数据文件之后,在主界面的命令窗口中依次输入以下命令:

tabulate pass

本命令的含义是对pass变量进行单个分类变量的汇总,结果如图2.17所示。可以看出,共有112个样本参与了分析,其中处于no状态的有44个,占比39.29%,处于yes状态的有68个,占比60.71%。此外,结果分析表中“Cum.”一栏表示的是累计百分比。

图2.17 对pass变量进行单个分类变量的汇总

tabulate pass,plot

本命令的含义是对pass变量进行单个分类变量的汇总,并附有星点图,结果如图2.18所示,可以看出对pass这一变量进行单个变量汇总的结果以及星点图情况。

图2.18 对pass变量进行单个分类变量的汇总以及星点图

2.2.2 两个分类变量的列联表分析

下载资源:\video\第2章\…

下载资源:\sample\第2章\数据2D

两个分类变量的列联表分析,常用到tab2命令,该命令的语法格式为:

tab2 varlist [if] [in] [weight] [,options]

tab2命令的功能是生成varlist中指定变量所有可能的双向列表。varlist为变量列表,[if]为条件表达式,[in]用于设置样本范围,[weight]用于设置权重,[,options]用于设置可选项。常用的可选项如表2.6所示。

表2.6 tab2命令的常用可选项

下面以“数据2D”数据文件为例进行介绍。“数据2D”中有3个变量,分别为gender和pass1、pass2,如图2.19所示。

图2.19 “数据2D”中的数据内容

打开上述数据文件之后,在主界面的命令窗口中依次输入以下命令:

tab2 pass1 pass2

本命令的含义是对pass1、pass2两个变量进行两个分类变量的列联表分析,分析结果如图2.20所示。从分析结果中可以看出共有119个样本参与了分析,其中有42人pass1为no、pass2为no,有10人pass1为no、pass2为yes,有39人pass1为yes、pass2为no,有28人pass1为yes、pass2为yes。

tab2 pass1 pass2,column row

本命令的含义是对pass1、pass2两个变量进行两个分类变量的列联表分析,还要显示每个单元格的列百分比与行百分比,分析结果如图2.21所示。分析结果表中的单元格包括3部分信息,其中第1行表示的是频数,第2行表示的是行百分比,第3行表示的是列百分比。例如,最左上角的单元格的意义是:pass1为no、pass2为no的样本个数有42个,这部分样本在所有pass1为no的样本中占比为80.77%,在所有pass2为no的样本中占比为51.85%。

图2.20 列联表分析结果图1

图2.21 列联表分析结果图2

2.2.3 多表和多维列联表分析

下载资源:\video\第2章\…

下载资源:\sample\第2章\数据2E

对于一些大型数据集,我们经常需要许多不同变量的频数分布。那么如何快速简单地实现这一目的呢?这就需要用到Stata的多表和多维列联表分析功能。关于多表和多维列联表分析,常用到table命令,该命令的语法格式为:

table rowvar [colvar [supercolvar]] [if] [in] [weight] [,options]

table命令的功能是计算和显示统计表。rowvar为行变量,colvar为列变量,[if]为条件表达式,[in]用于设置样本范围,[weight]用于设置权重,[,options]用于设置可选项。

本例中我们使用的数据集来自“数据2E”数据文件,有4个变量,分别为gender和pass1、pass2、pass3,如图2.22所示。

图2.22 数据2E

打开上述数据文件之后,在主界面的命令窗口中依次输入以下命令:

tab1 pass1 pass2 pass3

本命令的含义是对数据中的分类变量pass1、pass2、pass3进行单个变量汇总统计,分析结果如图2.23所示。可以看出,共有94个样本参与了分析,其中针对pass1变量,为no的样本个数一共有38个,占比为40.43%,为yes的样本个数一共有56个,占比为59.57%;针对pass2变量,为no的样本个数一共有73个,占比为77.66%,为yes的样本个数一共有21个,占比为22.34%;针对pass3变量,为no的样本个数一共有70个,占比为74.47%,为yes的样本个数一共有24个,占比为25.53%。此外,结果分析表中“Cum.”一栏表示的是累计百分比。

tab2 pass1 pass2 pass3

本命令的含义是对数据中的分类变量pass1、pass2、pass3进行二维列联表分析,分析结果如图2.24所示。

图2.23 分析结果图1

图2.24 分析结果图2

从分析结果中可以看出本次调查所获得的信息:分析结果中包括3张二维列联表,第1张是变量pass2与变量pass1的二维列联表分析,第2张是变量pass3与变量pass1的二维列联表分析,第3张是变量pass2与变量pass3的二维列联表分析。关于二维列联表的解读,我们在上一节的示例中已经讲述过,不再赘述。

by pass1,sort:tabulate pass2 pass3

本命令的含义是以pass1为主分类变量,制作pass1、pass2、pass3三个分类变量的三维列联表,分析结果如图2.25所示,是一张三维列联表,包括两部分:上半部分描述的是当pass1变量取值为no的时候,变量pass2与变量pass3的二维列联表分析;下半部分描述的是当pass1变量取值为yes的时候,变量pass2与变量pass3的二维列联表分析。

table pass1 pass2 pass3,contents(freq)

本命令的含义是对数据中的分类变量pass1、pass2、pass3实现带有数据频数特征的列联表分析,分析结果如图2.26所示。本结果分析图的解读方式与前面类似,这里不再赘述。

其中contents括号里的内容表示的是频数,该括号内支持的内容与命令符号的对应关系如表2.7所示。

图2.25 分析结果图

图2.26 分析结果图

表2.7 contents括号内支持的内容与命令符号的对应关系