在数据收集过程中,重要的是条分缕析。
数据收集和整理中不仅需要核实,还需要记录。主要记录:
数据来源信息:
数据载体类型信息:
数据描述信息:
数据分类信息:
数据存储信息:
“老师,能把上星期发给我的课件再发一遍吗?我忘记放到哪了?”
“老师,非常的崩溃!电脑的硬盘坏了,写的东西都没有了!”
上述记录信息要尽可能的保存若干个版本。
纸和笔的传统版本。便于在需要的时候翻阅,尤其是使用范围相对较广的数据。
数字化可检索的版本。为什么要做数字化的可检索版本?
目录树法(相对简单的数据)
建立专门的数据库(针对异常复杂或庞大的数据)
数字化数据有一些需要特别注意的问题:
数据存储。随时都有若干个备份!
数据安全。安全的风险,要么来自于使用者的误操作,要么来自于内部或者外部的有意攻击。
文本数据的安全:
文本数据的安全威胁主要来自于不可抗力的一些因素,比如说自然灾害、风蚀等。
当然也来源于人为因素。比如说错误的识别,本来是很重要的数据,却被当作了废纸。
非数字化数据的安全:
图片数据的载体形态比较复杂,胶片、图片由于介质存储特征的差异,不可以混合放置而保管。如胶片就需要防潮,通常要使用防潮器皿。
实物数据的安全具有独特性,应根据实物实物特征进行科学整理和安全管理。比如说兵马俑,那就在兵马俑的原址上盖一个博物馆进行整理。
数据整理主要是分类和梳理,数据清洗主要讨论的则是检错。通过这两部分的工作减少人为的误差,降低调查误差。数据清洗包括四个工作内容:
真实性评估:确认数据是真实的,不是道听途说,不是张冠李戴,更不是杜撰臆想。
“假新闻”现象就是调查数据在真实性层面出现的问题。
微信群里“令人发指”的各类长辈转发
完整性评估:数据应与研究工作的目标要求相符,研究不需要的就不应该出现在数据中,研究需要的在数据中就不应该缺少。
如果需要补值,就应继续补充收集数据。
可用性评估:数据是不是可以用于数据库化了?如果不能,还需要做怎样的数据加工?
错误性评估:评估数据可能的错误来源、可能的错误大小,及其对数据质量的影响。
以调查问卷数据的清洗为例:
真实性的清洗:要确认数据来自于受访者。
完整性的清洗:主要看样本无应答,也就是一整份问卷没有应答。以及选项无应答,也就是应该应答的访题没有应答。
可用性的清洗:主要是看编码是否完成,权数是否可行,以及缺失值如何标记和处理。
错误性的清洗:主要是清洗调查环节的错误,比如样本错误、应答人错误、应答方式错误。
清洗数据工作中的每一项活动都要有记录。记录信息包括:
清洗工作记录
清洗工作的信息记录:
清洗内容记录
与清洗内容相关联的信息记录:
数据清洗的记录信息应尽可能地保留若干不同的版本。一般包括纸笔版本和数字化版本。纸笔版本便于随时翻阅,数字化版本,便于交流,也便于检索。
笔记的整理。不管是哪一类的笔记,所有的笔记都有私用和公用之别,通常人们做笔记都是做给自己看的(私用笔记)。
你把自己的笔记给别人看,别人能看懂吗?
在正式使用之前,需要把笔记数据通过整理,变成任何使用者都可读的笔记(公用笔记),
这就是格式化问题,就是把你个人的笔记整理为数据笔记。
对音频要抄录:
把语音文档,不管是磁带录音,还是数字录音,抄录为文字,表述为文字或者文字加图片这样的格式。
数字录音还有一个格式清洗问题,不同数字设备的录音,可能会 采用不同的格式。
比如olympus的早期设备,采用的就是它自己的格式,DSS格式;如果不是采用它自己的软件就读不出来,最好呢,是转化为通用的格式,比如mp3格式。
对视频清洗编码:
如果是非数字录像,最好先转化为数字格式
如果已经是数字录像,对视频清洗编码需要给出时间记录码。
哦,已经数字化了,可以扔了,那个没用了,可以扔了。
不要轻易地丢弃任何一段看起来没有用处的信息,信息载体。
清洗不是仍东西,是清洗数据,让数据清晰化。
清洗的目的就是将特异性的数据,转化为公共性的数据、分析研究者都可以读的数据。
在清洗的过程中,千万要保留原始观察记录。
一般而言,原始问卷至少要保留十年以上,访谈记录和观察笔记一般要求永久保留。
以观察性研究中数据的清洗为例:
观察性数据有一个特点就是差异性,对同一个场景、同一个事件,不同的人去观察,看到的并非完全一致。
每个人的观察记录,都有自己的习惯,有的习惯于采用速写和密写,比如说有些人为了防止别人看他的笔记,长采用密写的方式。 即使是结构式的观察,不同的观察者也会有特异性。
观察性数据的清洗就需要把各类个性化的个人观察数据转变为标准化的观察记录。
以文献数据的清洗为例:
笔记的清洗。 比如说:研究用的素材如文献的阅读、标注与笔记、摘录,如果希望未来继续使用,那就需要格式化清洗,把素材转化为数据。如果有必要,还可以为下一步的数据库化做准备,比如编码。
文献的清洗。对阅读过的文献,如果已经获得了数字版本,就需要与数字版本关联的编目信息、阅读信息关联起来整理,结合后边讨论的数据库化工作,把它们转化为个人档案馆。如果没有数字化的版本, 则需要将文献信息与阅读笔记信息关联,结合后边讨论的数据库化工作,把它们变成个人的档案阅读目录数据馆。
对痕迹数据的“四性”评估和清洗,一般是直接依据数据的来源来确认的。比如,来自于网络爬取的数据,和来自于数据拥有者机构提供的数据,其它的平行数据等等。
一般而言,如果数据来源的渠道没有问题,数据的四性就不会有太大的问题。 清洗痕迹数据最重要的一项工作,就是把非格式化数据 清洗为格式化数据(Why?至少目前的分析工具还不支持直接分析非格式化的数据)
数据格式化:把混杂在一堆数据中的各类数据清洗出来,分门别类。比如说日志数据中的用户行为数据,以淘宝数据为例,订单数据、发单数据、物流数据等等,分门别类整理出来。
数据结构化:把各类数据和变量进行多维度关联。比如把以上日志数据中的各个子集关联到用户之下,形成类似于问卷调查数据的每个样本数据。
如果痕迹数据是大数据,情况就有些不同了。
在清洗数据之前,需要把清洗策略测试一遍,然后就可以直接采用大数据的清洗模式了。
从大数据中抽取数据,或者是从网页上爬取数据,在处理中尽管不一定会用到云计算, 在处理逻辑上还是一致的。
大数据的清洗,目前运用比较普遍的是Hadoop框架下的Map Reduce。
阿里巴巴有淘宝、天猫、一淘等等业务,这些业务每时每刻都在产生数据,这些数据涉及到信用、金融、物流、管理等等业务操作。
所有这些操作的数据都会汇集到数据交换平台,由此构成了阿里巴巴的数据动态。
超大数据流
2014年的双十一期间,6个小时之内的处理量就已经达到了100个PB。
在产生的这些数据中,既有结构化的数据,也有非结构化的数据,进出数据平台的数据不是个,不是匹,而是流。
这些数据流,通过数据处理就变成了中间层的数据,可以运用和应用于服务,中间服务,既可以对内,又可以对外。
问题是,这些数据是怎么处理的呢?数据清洗关心的正是这个问题。
中国综合社会调查(China General Society Survey,CGSS):
CGSS2013, CGSS2015
属于混合截面数据:也即不同年份的观测单位不是固定的。
我们这里的CGSS2015
数据集,其存放文件格式CGSS2015.dta
,这是一种Stata
软件的典型标签化(labelled)数据格式。
CGSS2015
数据集一共有样本数10968,变量总数有1398
数据集标签labels
数据集的标签(labels)属性一般有 3 种类型:
变量标签(variable’ labels):变量的简短描述
值标签(value’ labels):与特定值相关的标签,例如M=男;F=女。
缺失值标签(Missing values’ labels):具体又包括(1)用户定义的缺失值(SPSS
样式),例如定义标签值999
表示该题项没有回答;以及(2)标记 NA
缺失值(Stata
和 SAS
风格)。
随机抽取300份样本的前20个变量。CGSS2015数据(样本数=10968)数据如下:
挑选出如下几个变量来观测:
挑选出如下几个变量来观测。CGSS2015回答情况一瞥(随机40个样本):
代码型变量名VS研究型变量名
代码型变量名往往难以直接用于分析(但适合进行数据库管理),因此需要先进行转译为研究型变量名,从而便于人类理解和记忆。
异常值的处理办法:
截尾:比如截掉大于0.99分位数的观测值。
数据的转换:对于右偏分布较严重的变量,即右侧异常值较多,自然对数(ln())可以使其更加对称。比如,年收入及其对数的分布。
第2章 数据收集、整理和清洗 [2-3节] 资料整理和数据清洗