美文网首页stata
如何使用stata清洗问卷数据

如何使用stata清洗问卷数据

作者: 寒见 | 来源:发表于2018-03-25 17:26 被阅读1195次

使用公司内部问卷系统来发送问卷,回收问卷后会有诸多错漏。因此问卷回收之后,首先要进行数据清洗,清洗完毕后才可进行分析。问卷清洗的工具有多种,如Excel、SPSS、stata等。我常用的清洗工具是stata,它既简单又快捷。本文我将总结使用stata清洗问卷数据的几个常用的简单步骤,供大家学习参考。

第一步:剔除问卷回答时长过短的问卷

一份问卷的题目长度一般在10-25道题间,一般以多选题为主。一个用户完成这样一份问卷,至少需要一分钟。为了剔除那些不认真填答的用户,有必要在问卷发出时就设置答卷时长统计。假如答卷时长的字段名称为“time”,那么在回收问卷后,可以在stata中用以下命令剔除这些用户:drop if time<60

第二步:删除内部员工数据

我们在发布问卷时,为了测试问卷是否能正常送达、是否能正常填答,通常会把几名内部人员的手机号/后台ID也放进问卷调研样本中。所以在回收问卷时,有几份问卷是内部人员填答的,是需要剔除的。假如此次给内部人员123、234、345都发放了问卷,可以在stata中用以下命令剔除这三个内部用户:drop if id=123 | id=234 | id=345

第三步:对年龄和职业进行交叉剔除

许多调研为了统计用户的人口特征,都会在问卷最后附上人口学相关的单选题(如年龄、职业、收入)。然而,有部分用户填答问卷时不够认真,会盲选答案,为了保证问卷结果的可信度,可以考虑是否有必要把这些用户剔除掉。

下面我举一个例子来说明:

e2为年龄题:

e4为职业题:

按照常理,我们都知道人们一般在60岁后退休,50岁以下退休的人极为少见。当样本量足够的情况下,可以考虑把选择了50岁以下退休的用户数据剔除,即是把年龄选了50岁以下且e4的职业选了“12退休”的用户剔除,剔除命令如下:

drop if e2==1 & e4==12

drop if e2==2 & e4==12

drop if e2==3 & e4==12

drop if e2==4 & e4==12

drop if e2==5 & e4==12

drop if e2==6 & e4==12

drop if e2==6 & e4==11

drop if e2==7 & e4==11

第四步:根据排他项逻辑补充数据

排他项是多选题中常见的选项,如下题:

第9个选项是明显的排他项,当选择了9时,其他选项都会变为不可选择的状态。一些问卷系统在导出选择了排他项的数据时,无法自动补充其他选项的数据,导出后会显示如下:

由图可见,除了f9补充了数字1,其余选项都是空白,这种数据是无法统计的,必须把f1-f8的数据补充为0才可以统计。补充命令如下:replace f1=0 if f9==1。(以f1为例)

补充完毕后,数据会显示如下:

第五步:处理多选题的其他项

在多选题中出现其他项时,默认会让用户填写文本内容。当用户填写了其他项的文本内容时,数据导出后会直接显示文本内容。要知道,文本内容是无法直接统计的,统计工具只能统计数字。

如下图,g9是一个其他项。

当用户选择了g9,导出的问卷数据可能会显示如下:

g9的数据是无法统计的,因此需要根据g9来新建一个变量g9_other来计算。命令如下:

gen g9_other=.

replace g9_other=1 if g9!="0"&g9!=.

replace g9_other=0 if g9=="0"

label var g9_other "其它项(0/1)"

执行命令后,数据显示如下:

第六步:定义权重

在实际的问卷统计过程中,时常会用到加权的概念。所谓加权,就是当样本的构成跟总体的构成不一致时,可能会导致回收的问卷结果无法反应总体的特征,这时候就需要使用加权,让样本乘以一个加权系数,使得样本构成与总体构成一致(由于统计要求不同,对加权系数的计算也会不同,这里对加权系数就不展开论述了)。

例如,h题为性别题,选项1为男性,选项2为女性。男性的加权系数为1.6,女性的加权系数0.4,这时需要给数据新增一个加权变量,命令如下:

gen weight=.

replace weight=1.6 if h==1

replace weight=0.4 if h==2

执行命令完毕后就会看到原始数据多了一列名为“weight”变量的数据。

相关文章

  • 如何使用stata清洗问卷数据

    使用公司内部问卷系统来发送问卷,回收问卷后会有诸多错漏。因此问卷回收之后,首先要进行数据清洗,清洗完毕后才可进行分...

  • 问卷数据清洗

    数据清洗: 数据导出 数据录入、变量标签修改、变量属性修改 数据异常值删除(箱线图)、空值补齐或删除 1.数据导出...

  • Stata语言编程 | 命令语和对话窗口

    [本文由李佳恩著,余志春翻译] 一:目录 如何使用Stata的命令语 如何使用Stata的对话窗口 二:如何在St...

  • Survey Design

    为什么使用问卷调查? 新科技让问卷调查变得更加便宜; 数据很重要。 问卷如何影响我们的生活 金钱 & 时间成本(问...

  • spss stata 数据分析

    SPSS/Stata/R/python/Matlab代分析 代做数据分析 统计分析 调查问卷分析 画图 ,回归 t...

  • 用PowerBI分析上市公司财务数据(一)

    本文章演示如何使用 Power BI 搭建简单的财务分析模型,主要涉及数据获取、数据清洗、数据建模,数据可视化等四...

  • Stata语言编程 | 图表制作

    一:问题描述 如何用stata软件制作不同类型的图表? 二:解决方案 打开stata软件,插入变量数据文件。[变量...

  • 使用 Stata 绘制粤港澳大湾区地图

    最近有培训班的小伙伴需要使用 Stata 绘制粤港澳湾区的地图,所以今天就介绍下如何使用 Stata 绘制。 为了...

  • 2018-10-28

    今天的收获: 1.初次操作STATA,跳着看了STATA的一些内容,掌握了如何打开文件、保存文件、录入数据、字符型...

  • stata命令详解-rename group

    1. 前言 在目前工作中,用stata清洗及分析数据,感觉很顺滑。无奈不少同学因为help文件里的英文望而却步。 ...

网友评论

    本文标题:如何使用stata清洗问卷数据

    本文链接:https://www.haomeiwen.com/subject/hqxmuxtx.html