首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

清理数据之折纸时代

之前写论文用的数据库较为简单单一,这次换成CFPS数据之后,一开始还是按照之前的数据清理思路去做,进度颇为缓慢,仅变量的再命名就是一个非常繁琐的工作。在tab的过程中,发现很多变量的取值都是不适用,很伤脑筋,难道这个是个废库么?可是再一统计childgroup各年龄段的人口比例,发现这绝B是个好库啊,转换思路,按照问卷,跟踪了某一问题的来龙去脉,终于搞明白了少儿库的单库逻辑。

还是那句话,做研究,应该以问题为导向。现实世界中问题千丝万缕,抽象为脑海中的一团团闪念,看不见摸不着,想要体现,一要借助问卷中的问题,二要借助数据库中的变量。所以,这里就出现了几个关键的逻辑:问题逻辑、数字逻辑,以及两者之间相关联的编码逻辑。

如果是个婴儿,就不可能问婚恋;如果已经辍学,就不可能问成绩;只有婚姻状态是已婚,才可能加载问题“你配偶的年龄是多少”,这就是问题逻辑。数据清理或者说熟悉数据库的过程,就是搞清楚这套问卷的问题逻辑,并从中筛选出可供己用的问题的过程。

比方说要问孩子的户口类型,可能会出现不适用、不知道、农业户口、非农户口和没有户口几种情况。我们通常最关心的就是农业户口和非农户口,于是便给他们赋值为1和3,没有户口的是5,不知道的是-1,不适用的是-8或者79。这些数字本身只能作为一个区分,而没有任何量上的意义。数据清理中,要做的首先是识别这些数字逻辑,然后将其重新赋值为可为我所用的逻辑。

编码逻辑是我们第一眼看到大型数据库之后最为不解之处:这些乱七八糟的variable name都是怎么来的?随之便产生了将其转化成平铺直叙的冲动。但如果我们搞清楚了这些变量与问题的对应关系,那么看kr421什么的无非就是看语文成绩的小语种表述,而且还是在这一系列问卷中的通用表述。这样不仅节省了重命名的过程,说不定在之后跨年关系的合并过程中还能省大工夫呢。

这三个逻辑其实就已经包含截面数据日常清理最主要的三个工作:找变量(keep and drop)、自定义变量(generate and replace)、重命名变量(rename)。

如此说来,我2010年的儿童库只需要找到问题和回答者的对应就好了。

OK,现在面前有两条路,第一条是根据问题来划分,看每个问题的回答者都有哪些人;第二条是根据回答者来划分,看看每个回答者都需要回答哪几部分问题。这两条道路各有优劣,第一条道路操作简单,只需要将每个问题下面注明回答者范围即可,与计算机的问题筛选机制相同;第二条道路表意直观,完全是秉承着以人为本的思想,指哪打哪,不存在问题不适用的情况。综合考虑,我决定采用第二种分类的方法继续搞。

最后,附一张脑图,链接如下:

http://naotu.baidu.com/file/d599e93274a209ea40ed722f7a3b2e6c

To be continued.

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180110G0V5AZ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券