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

article/2025/11/11 1:50:36

对数据使用者来说,了解一个调查数据基本情况的常见途径就是查看该数据的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便可以解决这一问题,如下所示:

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

总结

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


http://chatgpt.dhexx.cn/article/qq7Qckun.shtml

相关文章

CodeBook算法

年份论文题目作者论文内容2004Background modeling and subtraction by codebook constructionK. Kim, T. Chalidabhongse, D. Harwood, and L. Davis提出了CodeBook算法2005Real-time foreground–background segmentation using codebook modelK. Kim, T. Chalidabhongse, D.…

图像处理之前景检测(三)之码本(codebook)(主要为代码升级)

图像处理之前景检测(三)之码本(codebook) CodeBook算法的基本思想是得到每个像素的时间序列模型。这种模型能很好地处理时间起伏,缺点是需要消耗大量的内存。CodeBook算法为当前图像的每一个像素建立一个CodeBook(CB)结…

RIDCP: Revitalizing Real Image Dehazing via High-Quality Codebook Priors(CVPR2023)论文记录

通过高质量码本先验重塑真实图像去雾(CVPR2023) RIDCP: Revitalizing Real Image Dehazing via High-Quality Codebook Priors通过高质量码本先验重塑真实图像去雾(CVPR2023)摘要一、数据合成流程二、VQGAN 预训练:构建…

【AI人工智能绘画 CV】Towards Robust Blind Face Restoration with Codebook Lookup Transformer

Towards Robust Blind Face Restoration with Codebook Lookup Transformer (NeurIPS 2022) 使用 Codebook Lookup Transformer 实现稳健的盲脸修复 Blind face restoration is a highly ill-posed problem that often requires auxiliary guidance to 1) improve the mapping…

2021-11-10-Codebook理解

《Deep Visual-Semantic Quantization for Efficient Image Retrieval》中提到的codebook是什么意思? Specifically, each image embedding zn is quantized using a set of M codebooks C [C1, . . . , CM ], each codebook Cm contains K codewords Cm [Cm1, .…

《学习openCV》例程解析 ex_9_3(codeBook模型实现背景减除)

56帧时 63帧时 /** 比平均背景法性能更加良好的方法,codeBook模型实现背景减除 核心代码详细解析和实现 by zcube */ /************************************************************************/ /* A few more thoughts on codebook models In general, the codebook met…

“Requesting Java AST from selection“. ‘boolean com.ibm.icu.text.UTF16.isSurrogate(char)‘

记录一次问题。自从安装了spring tool(sts)插件后,在使用eclipse过程中总是弹出An internal error occurred during: "Requesting Java AST from selection". boolean com.ibm.icu.text.UTF16.isSurrogate(char)这种错误&#xff0…

详解Unicode与UTF-8、UTF-16、UTF-32.

计算机起源于美国,上个世纪,他们对英语字符与二进制位之间的关系做了统一规定,并制定了一套字符编码规则,这套编码规则被称为ASCII编码 ASCII 编码一共定义了128个字符的编码规则,用七位二进制表示 ( 0x00 - 0x7F ), …

解决eclipse boolean com.ibm.icu.text.UTF16.isSurrogate(char)

window > preferences > java > Editor > mark occurrences and desable : mark occurrences ...

字符集编码 Unicode UTF8 UTF16 UTF32 和BOM(Byte Order Mark)

BOM(Byte Order Mark) 在分析unicode之前,先把bom(byte order mark)说一下。 bom是unicode字符顺序的标识符号,一般以魔数(magic code)的形式出现在以Unicode字符编码的文件的开始的头部,作为该文件的编码标识。 来举个很简单的例子,在windows下新建一个文本文件,并另…

utf8与utf16转换

1.UTF8与UTF16编码转换 std::string ConvertFromUtf16ToUtf8(const std::wstring& wstr) {std::string convertedString;int requiredSize WideCharToMultiByte(CP_UTF8, 0, wstr.c_str(), -1, 0, 0, 0, 0);if(requiredSize > 0){std::vector<char> buffer(requ…

探究乱码问题的本源:GBK,UTF8,UTF16,UTF8BOM,ASN1之间的关联

文章目录 前言一、字符集和字符编码的区别和联系二、字符集编码的发展1.单字节2.双字节3.多字节(UNICODE字符集)&#xff08;1&#xff09;UTF-8&#xff08;2&#xff09;UTF-16&#xff08;3&#xff09;UTF-32&#xff08;4&#xff09;UTF BOM 三、不同编码方式的对比分析四…

oracle字符集utf16,oracle字符集AL16UTF16改为ZHS16GBK

AL16UTF16一个汉字占3个字节 ZHS16GBK一个汉字占2个字节 sql> conn / as sysdba; sql> shutdown immediate; database closed. database dismounted. oracle instance shut down. sql> startup mount; oracle instance started. total system global area 135337420 …

字符编码的概念(UTF-8、UTF-16、UTF-32都是什么鬼)

字符集为每个字符分配了一个唯一的编号&#xff0c;通过这个编号就能找到对应的字符。在编程过程中我们经常会使用字符&#xff0c;而使用字符的前提就是把字符放入内存中&#xff0c;毫无疑问&#xff0c;放入内存中的仅仅是字符的编号&#xff0c;而不是真正的字符实体。 这就…

UTF-8 与 UTF-16编码详解

目录 一、UTF-8编码 1、UTF-8介绍 2、UTF-8是如何编码的&#xff1f; 3、上述Unicode码点值范围中十进制值127、2047、65535、2097151这几个临界值是怎么来的呢&#xff1f; 二、UTF-16编码 1、UTF-16介绍 2、UTF-16编码方式 1&#xff09;设计思路 2&#xff09;具体…

了解一下UTF-16

1)先啰嗦一下 UTF-16是一种编码格式。啥是编码格式&#xff1f;就是怎么存储&#xff0c;也就是存储的方式。 存储啥&#xff1f;存二进制数字。为啥要存二进制数字&#xff1f; 因为Unicode字符集里面把二进制数字和字符一一对应了&#xff0c;存二进制数字就相当于存了二进制…

字符编码--UTF-16

2019独角兽企业重金招聘Python工程师标准>>> 第4节 UTF-16 UTF-16是Unicode字符编码五层次模型的第三层&#xff1a;字符编码表&#xff08;Character Encoding Form&#xff0c;也称为"storage format"&#xff09;的一种实现方式。即把Unicode字符集的抽…

蔡勒公式、三角函数

1.蔡勒公式 2.三角函数

蔡勒(Zeller)公式及其推导:快速将任意日期转换为星期数

0. 本文的初衷及蔡勒公式的用处 前一段时间&#xff0c;我在准备北邮计算机考研复试的时候&#xff0c;做了几道与日期计算相关的题目&#xff0c;在这个过程中我接触到了蔡勒公式。先简单的介绍一下蔡勒公式是干什么用的。 我们有时候会遇到这样的问题&#xff1a;看到一个日期…

1185.一周中的几天 四种解法(java),主要新学一下蔡勒公式

题目 给你一个日期&#xff0c;请你设计一个算法来判断它是对应一周中的哪一天。 输入为三个整数&#xff1a;day、month 和 year&#xff0c;分别表示日、月、年。 您返回的结果必须是这几个值中的一个 {“Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursday”…