【Stata】CGSS数据清理:Codebook速成法

对数据使用者来说,了解一个调查数据基本情况的常见途径就是查看该数据的codebook。

对数据所有者/提供方来说,制作一份详细的codebook是其数据管理工作中不可或缺的一环。

2016年上半年CGSS项目组把CGSS2003年到CGSS2013年期间的8年年度数据合并成一个大数据,根据CGSS数据的特点,为合并数据整理了codebook。

CGSS合并数据的codebook包括以下内容:题目、变量名、变量标签、取值、值标签以及变量取值在不同年份中的频数分布。

CGSS合并数据codebook的主体为类别变量在不同年份的频数分布。

本文以CGSS20032013两年合并数据中变量a1aa7“第二个家庭成员与被访者之间的关系”为例,为大家介绍两种快速生成频数分布表的方法。该频数分布表的基本结构如下图所示:

在这里插入图片描述

方法一:命令组合codebookout + tabulate

命令codebookout可以把变量取值和值标签直接导到excel表中,导出结果如下图所示:
在这里插入图片描述

但我们的codebook中除了取值和值标签外,还需要列出变量取值在每一年中的频数分布,命令codebookout不具备这一功能。此时,还需通过命令tabulate列出变量的频数分布,再与codebookout的结果进行匹配即可,tabulate结果如下图所示:

在这里插入图片描述
命令tabulate生成的频数分布表只显示任何一年频数不为0的取值的频数分布,因此还需给两年数据频数都为0的取值加“0”,这样就可以得到变量a1aa7在图1中所示的完整的频数分布表。

方法二:命令fre

命令codebookout和tabulate的组合可以顺利生成codebook,但生成的过程中要进行多步繁琐的匹配和修正。其一,要通过取值将命令tabulate得的频数与命令codebookout导出的结果进行匹配;其二,要单独添加频数为“0”的取值;其三,命令tabulate执行一次只能查看一组变量的频数分布情况,在CGSS20032013数据中,我们需要得到多个变量在不同年份的频数分布状况,因此用命令tabulate查看时需要多次重复执行同一个命令。

鉴于以上情况,我们引入Stata的一个第三方命令fre。命令fre与不同选项的组合,能很好地综合codebookout和tabulate的功能,从而帮我们更快捷地得到一个完整的频数分布表。命令fre语法结构如下:

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

仍然以变量a1aa7“第二个家庭成员与被访者之间的关系”为例,通过命令fre查看其频数分布情况,结果如下图所示:

在这里插入图片描述
命令fre可以一次查看多个变量的频数分布,但不能交叉查看,因此,查看变量在不同年份的频数分布时需要通过if条件限制。从上图中可以看出,单独用命令fre,可以同时列出取值、值标签和频数分布,但频数分布为“0”的取值依然不能完整列出,此时,只要给命令fre加选项include便可以解决这一问题,如下所示:

在这里插入图片描述
然后对其稍作调整便可得到所示的频数分布表。

总结

至于其他的学习整理方法,可以去自行学习和查找!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旅途中的宽~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值