拿到CGSS数据的那天晚上,我盯着文件夹里十几个压缩包发呆。中国人民大学中国调查与数据中心发布的这套中国综合社会调查数据,是国内社科研究绕不开的富矿,但初次上手的人往往卡在第一步——不知道怎么把那些.sav、.dta文件变成能跑回归的干净数据。别急,这篇指南就是给你趟路用的,咱们从解压密码开始聊。

先说下载和格式问题。CGSS官网注册后能申请数据,审核通过会给你一个网盘链接,里面按年份分了好几个文件夹。注意,别只下最新一年的,比如你想做纵向比较,2010年、2015年、2021年的问卷结构差异很大。下载后你会看到Stata格式(.dta)和SPSS格式(.sav),建议直接用Stata,因为CGSS的变量标签和值标签在Stata里识别最完整。我见过有人用SPSS打开后变量名乱码,折腾半天才发现是编码格式没选UTF-8。
打开数据文件只是开始,真正的坑在变量清理。CGSS的变量命名规则是“年份+模块代码+序号”,比如A2是性别,A3a是出生年份,但不同年份同一问题的变量名可能不一样。比如2012年的“a2”是性别,2015年变成“a2”还是性别,但2017年就改成了“a21”。最稳妥的办法是每次下载数据时,把当年那份《变量说明文档》PDF一起下下来,用Ctrl+F搜关键词。我习惯先把所有变量名导出成Excel,把要用的变量高亮,再对照问卷逐条核对。
说到问卷,很多人忽略了一个关键文件——问卷原文。CGSS官网的“数据下载”页面里,每份数据都对应一份PDF问卷,这玩意儿比变量说明文档还管用。比如你想研究“主观幸福感”,光看变量名“A36”猜不出具体问法,但翻问卷原文就能看到问题措辞是“总的来说,您觉得您的生活是否幸福?”以及选项是1-5分还是1-10分。不同年份的计分方式可能微调,比如2013年是5点计分,2018年改成了11点计分,如果你不核对问卷就直接合并数据,跑出来的结果会失真得离谱。
接下来是加权问题,这是新手和老手的最大分水岭。CGSS数据自带权重变量,常见的有“w”和“w1”,分别代表个体权重和家庭权重。很多人做描述统计时懒得加权,直接跑频数,结果算出来的全国平均收入比官方统计低一大截。正确做法是,在Stata里用设定权重变量,再跑或。比如你想算全国居民人均收入,就得用。但注意,做回归分析时要不要加权,学术界有争议——有人主张加权能纠正样本偏差,有人觉得回归里加了权重反而增大标准误。我的建议是:描述统计必须加权,回归分析先不加权重跑一遍,再加权跑一遍,如果结论差异不大,汇报不加权的结果,这符合多数期刊的偏好。
处理缺失值是另一个大坑。CGSS的缺失值编码很复杂,常见的有-1(不知道)、-2(拒绝回答)、-3(不适用)、-8(其他)。如果不处理,直接跑回归,这些负值会被当成真实数值参与计算,结果惨不忍睹。正确做法是,先用命令把负值统一转成缺失值,比如。但有些变量你得分情况讨论,比如“收入”变量里-1可能代表“没工作”,这时候直接删掉会损失样本量,更好的办法是生成一个“是否有工作”的哑变量,再把-1赋值为0收入。这一步偷懒,后面全是坑。
做跨年份合并时,还有个容易忽略的细节:变量标签里的文字可能不一样。比如2015年变量“a2”的标签是“性别”,2018年变成了“受访者性别”,虽然意思一样,但合并后Stata会提示标签不一致。这时候别慌,用和重新统一标签就行。更麻烦的是问卷选项顺序变化,比如2010年“教育程度”的选项从“未受教育”到“研究生及以上”排了13档,2015年改成9档,直接合并的话数值对不上。解决方案是,先把每个年份的分类变量重新编码成统一的类别,比如“小学及以下”“中学”“大学及以上”三档,再合并。
实操中,我建议你建立一个“数据清洗日志”文档,记录每一步操作。比如“2023年11月2日,删除a2为-1的样本127个”“重新编码教育程度变量,原4-6合并为中学”。这不仅是学术规范要求,更是为了你自己两个月后回看代码时不至于抓瞎。很多人在这一步栽跟头——代码写得天花乱坠,但没注释没日志,写论文时根本想不起来当初为什么这么处理,只能重跑一遍,浪费时间。
说说输出结果。跑完描述统计和回归后,别急着复制粘贴到Word里。用或命令把回归结果导出为Excel或RTF格式,这样能自动生成三线表,省去手动调整的麻烦。而且导出时记得保留观测值数量和R方,这是审稿人最爱看的东西。另外,CGSS的数据是横截面数据,做因果推断时得谨慎,最好配合工具变量或倾向得分匹配,但这就超出“入门”范畴了。你先把手上的数据洗干净、跑出稳健的结果,比什么都强。
从下载到清洗到分析,这套流程走完,你基本就摆脱了“数据小白”的帽子。CGSS的妙处在于,它给了你一个真实中国社会的切片,但切片里的每一道纹理,都需要你自己去清理、去辨析。数据不会说话,但当你把那些负值变成缺失值、把错位的分类重新对齐,它就开始讲述属于你的研究故事了。


