数据不仅整理好了,也清理好了,是不是就可以分析研究了呢?
采用手工计算的情形几乎已经消失了。数据的数量与复杂程度,已经超出了人们运用大脑、纸和笔,直接处理的程度。
数据分析与研究,从计算机应用普及以来,就已经主要依靠计算机了。运用计算机是最有效和最快捷的方式。
运用计算机就需要满足计算机对数据的要求,那就是数据库。
清理整理好的数据,要变成计算机可以读取并进行运算的数据格式,通常这一类的格式都是数据库格式。
计算机应用程序不同对数据库的格式要求也不相同。
数据库化的目的就是为了便于分析和使用。基本的要求是通过数据库化,让数据格式化、结构化,符合统计分析、计算的要求。
数据的数据库化,就是把得到的变量、变量属性或者标签输入计算机,变成结构化的数据矩阵。从数据库化的目标来分,主要有如下两类:
计算机网络系统的数据库化,主要是用于存储数据,有各种类型的数据库应用程序。
常见的结构化数据库SQL
数据库有有多种,比如开源的免费的My Circle
。
分析计算用的数据库化,主要是通过建立数据库,用于统计分析软件的计算。
我们这里所学的就是这一类数据库化。
我们主要学习常用的运用于计算机单机统计计算与分析用的数据库化。
大数据的数据库化有不一样的特点和需求。
下面我们以结构化查询语言SQL为例,介绍计算系统的数据库。
某医院档案中有如下两个数据框:
以下为R编程下的最简化SQL使用示例:
采用SQL语言分别查询信息:
采用SQL语言一次性查询关联信息:
# 采用SQL语言一次性查询关联信息
## 使用JOIN连接两个表进行查询
dbGetQuery(db,
"
-- 这是SQL查询语法
SELECT i.id, i.name, i.age, c.blood_pressure -- 选择需要的字段
FROM tbl_info i /* 病人基本信息表,使用别名i */
JOIN tbl_check c /* 病人检查信息表,使用别名c */
ON i.id = c.id /* 通过id字段关联两个表 */
WHERE i.id = 2 /* 筛选编号为2的病人 */
"
)
id name age blood_pressure
1 2 Bob 30 130
最后,记得关闭数据库连接。
SPSS是社会科学统计计算运用比较多的一个大型统计计算软件
SPSS数据库的数据视图:
SPSS数据库的变量视图
问卷调查的数据,在完成了问卷的审核、归档、清理以后,在用于分析软件的分析之前,就需要把它转化为数据表示的数据库。通常有三个步骤:
第一步,编码。
第二步,数据录入与转化。
第三步,对录入完成和转化完成的数据,做基本的检验和清理。
编码:就是把调查问卷的每一道访题用符号或者数字组合代码换,包括对每一道访题的选项或应答赋值。
每一道访题的编码就是数据库表中的变量。
应答赋值就是数据库表中的变量值,这个只有各种属性,就是数据库表变量视图中的各种标签,又称为变量标签。
我们来看一道调查问卷中的一道提问:
【问题】1.5,请问您希望孩子念书,最高念到哪一个程度?(共7个选项)。
【选项】A.小学;B.初中;C.高中;D.专科、职高、技校、大专;E.大学本科;F本科以上;G.不必念书
对这套访题我们可以这样编码,访题可以编为B1.5
。(为什么这么编?)
对选项的编码,就以选项的编号做编码。(你还可以怎么编?)
问卷调查数据的编码,一般有三种方法:
第一:原始编码,就是直接运用问卷的编码。
第二:先编码,在调查开始之前,编码工作就已经做好了。
第三,后编码,就是在问卷调查完成以后再做编码。
编码部相当于问卷数据的一个索引,把变量、变量值,变量标签关联起来,类似于一本问卷数据字典。
对于简单的问卷调查,可以运用常用的办公软件或统计分析工具来做录入,
对于相对庞大复杂的问卷调查,需要使用专门的数据录入软件。
专用录入软件
专用录入软件的能提高录入效率,并减少录入误差:
针对的已经数据库化的数据,通常需要运用统计分析方法进行检验和清洗:
第一,录入错误清理。可以把双录入的数据输出为一个清理数据库,核对录入中出现的冲突数据。
第二,编码清理。对不在编码值范围的变量值进行清理。
第三,逻辑清理。主要是针对基本事实逻辑的清理。
数据库检验和清洗还需要注意如下问题:
离群值:偏离了日常理解的范围,但实际上可能是有效值的一部分。
极大值和极小值, 都是需要再次确认的变量值。
无应答的处理,通过分析已经应答的数值,确定对无应答的处理方式,比如差值。
正常的完成了数据库化的问卷数据,至少应该包括以下的文件:
调查问卷(已经有了)
调查问卷的数据库编码手册(已经有了)
两个数据库,一个是完成问卷的数据库,一个是未完成问卷的数据库。
样本数据库,通常抽样完成以后,一定有一个数据库。这个数据库包括了用于抽样的变量、抽样单位、分层变量、权重变量等,这些应该是分析研究之前已经有的数据。
抽样报告、实施报告,这两份报告用于判断数据质量,制订分析策略。
完成的、未完成问卷数量的统计表。通常用表格方式展示出来。
数据清理报告,对变量的可分析性要进行说明。
对访谈调查的数据,在完成了访谈笔记的整理、格式化、归档、清理之后,在用于分析之前也需要把相关的信息录到数据库中。访谈记录与整理信息应该数据库化。
第一步,编码。
第二步,录入。
第三步,清理。
访谈数据的编码有两类:
访谈记录信息的编码。基本变量有记录编号、访谈时间、地点、人物、主题、位置图。如果有日志信息,也需要把日志信息加入其中。
访谈记录的编码。如果希望编码的程度可以直接应用到内容分析软件的分析,那么就需要学习专门的课程,不同的分析软件对编码的要求是不一样的。
访谈数据的录入工具:
要是涉及到数字数据的,就可以使用Excel、SPSS、Stata、Statistica、r等等
对文本数据,就可以使用Word,当然也可以使用Numbers和Pages。
对访谈内容,还可以采用内容分析软件,比如Nvivo、Aquad、ATLAS.ti和Qualrus。
访谈数据录入的几个要点:
录入策略问题。对于访谈记录信息的录入,尽量采用标准化的格式,目的是便于交换、便于交流。
文本格式问题。一般可以先转录为纯文本格式,注意纯文本格式有一个编码问题,最好采用通用的编码,比如Unicode。
访谈数据的数据库化产出也有一份清单,至少要有以下的数据文件:
调查提纲或者访谈提纲,或者访谈设计。
访谈记录的整理、清理的数据库
访谈内容的数据库
访谈记录的数字化,也就是数字化的过程及报告
最后还有清理报告
中文情感词汇库是中文文本分析(如文本情感分析)的一个重要基础。
大连理工大学信息检索研究室在林鸿飞教授的指导下整理和标注形成一个中文本体资源。该资源从不同角度描述一个中文词汇或者短语,包括词语词性种类、情感类别、情感强度及极性等信息。
在进行文本情感分析时,可以采用该资源来构建情感词典。词库维护网站及词库下载(xlsx格式)链接http://ir.dlut.edu.cn/info/1013/1142.htm
中文情感词汇本体的情感分类体系是在国外比较有影响的Ekman的6大类情感分类体系的基础上构建的。
在Ekman的基础上,词汇本体加入情感类别”好”对褒义情感进行了更细致的划分,最终词汇本体中的情感共分为7大类21小类。
通过对红酒网购消费者评论的文本抓取,我们搜集得到了一个txt文件,文件中每一行都是一条消费者评论。
D:/github/course-st/slide/slide-reveal/code/demo-txt
├── wine-comment.txt
├── word-dict-daliang-instruction.doc
└── word-dict-daliang.xlsx
[1] "红酒味道比较淡,不如其他国外经典品牌的红酒好喝。"
[2] "这款红酒口感不错,果香浓郁,单宁柔顺,回味悠长。"
[3] "包装很精美,适合送礼。"
[4] "价格有点贵,性价比不高。"
[5] "买了以后价格就降了,感觉被坑了。"
[6] "这款红酒口感一般,果香不足,单宁较涩。"
[7] "物流速度很快,包装完好无损。"
[8] "赠送的小礼品很贴心,很喜欢。"
[9] "差评,口感很差,不推荐。"
[10] "物流速度很慢,等了好久。"
[11] "上次买过这款红酒,口感很好,这次又买了。"
[12] "收到货后有破损,联系客服后很快就解决了。"
[13] "双十一的价格实在太香了,囤了几瓶。"
[14] "这款红酒口感很独特,值得一试。"
[15] "包装很用心,送礼很有面子。"
[16] "用了平台券,价格很划算。"
[17] "国产红酒也有这么好的品质,很惊喜。"
[18] "客服态度很差,解决问题不积极。"
[19] "包装很简陋,感觉不值这个价。"
[20] "口感很一般,性价比不高。"
### 辅助函数:基于jiebaR分词====
### 同时考虑情感词典中的情感类型pos和强度intensity
analyze_sentiment <- function(text, sentiment_dict) {
# 创建分词引擎
seg <- worker()
# 文本分词并进行情感分析
sentiment_scores <- text %>%
# 分词处理
map(segment, seg) %>%
# 转换为tibble
enframe(name = "id", value = "words") %>%
# 展开词列表
unnest(words) %>%
# 与情感词典匹配
inner_join(sentiment_dict, by = c("words" = "word")) %>%
# 计算情感得分
mutate(
# 将pos转换为得分:褒义=1,贬义=-1,中性=0,兼有褒贬=0
score = case_when(
pos == 1 ~ 1,
pos == 2 ~ -1,
pos == 0 ~ 0,
pos == 3 ~ 0,
TRUE ~ 0
),
# 考虑情感强度
weighted_score = score * (intensity / 9) # 将强度归一化
) %>%
# 按文本ID分组统计
group_by(id) %>%
summarise(
# 统计词数
word_count = n(),
# 统计情感词数
positive_words = sum(score > 0),
negative_words = sum(score < 0),
neutral_words = sum(score == 0),
# 计算得分
total_score = sum(weighted_score),
# 计算平均强度
avg_intensity = mean(intensity),
# 计算情感倾向(正负比例)
sentiment_ratio = (positive_words + 1) / (negative_words + 1),
.groups = "drop"
)
return(sentiment_scores)
}
观察数据怎么数据库化呢?主要也是三个步骤:
第一步,编码。
第二步,录入。
第三步,清理。
观察数据的编码主要包括两个方面:
观察记录信息的编码。基本变量包括记录编号、观察的时间、地点、事件、主题,还有观察媒体(望远镜/摄像机/眼睛)。如果有日志信息,也可以把日志信息列入其中。
观察记录内容的编码。即使观察记录的内容不会作为统计分析的素材,最好还是录入为数据化的文本文件,便于交流。
观察记录的录入:
文本数据、数字数据的录入。采用word或pages录入。
图片数据的录入。可以采用类似于Adobe的Lightroom之类的数据库。可以先扫描,再录入记录信息。
视频数据的录入,则可以运用类似于Adobe Premier之类的编辑库。
音频数据的录入,也可以寻找适用的音频数据库。
一份完整的数据库化的观察数据的数据库, 至少要提供以下的数据文件:
观察提纲或者观察设计;
观察记录的整理、清理数据库;
观察内容数据库;
观察记录数据数字化、数据库化过程的数据;
清理报告。
文献数据一般情况下原本就来源于数据库。
因此,运用原来数据库的数据,是文献数据库的特点。文献数据的数据库化包括三个步骤:
编码。指的是文献信息的编码,而不是文献内容的编码,文献信息就是编目信息,文献内容就是文献记载的内容。
录入。就是把原来数据库的文献编目信息和文献内容抄录到研究用的文献数据库中去。
清理。就是在数据录入完成以后,对录入的数据进行核查、清理,包括完整性检查。
为了确保同学们已经掌握了文献编目信息,我重复一遍文献的编码。
文献记录信息的录入和管理。
jasdo
,还支持编码的数据直接导出。Zotero
、Endnote
和papers
。文献内容信息的录入和管理。
onenote
、Mindmanager
、印象笔记等。痕迹数据的数据库化,无论是Map-Reduce的产出,还是网页爬取的数据的整理、清理时的产出,都是基于变量的数据,还没有把变量数据串起来,变成基于样本的数据。
样本在变量上的变异是分析工作的基础,数据库化需要做的工作就是把变量数据串起来,变成类似于样本数据的数据。串起来的方法很多,技术性也很强,基本上依靠脚本来完成。
如果从大数据中抽取数据,由于无需数据录入,故数据库化只有两个步骤可做:
编码。通常原有的数据就已经有编码了,这个手续要做的就是要么确认使用原来的编码,要么呢,因为特殊的原因,需要重新编码,何去何从,完全取决于计算的需要。
清理。与其他调查数据的清理不同,这里主要是在确认编码以后,确认数据的可计算性,也就是格式化、结构化在转化中没有发生问题,以及是否可以直接运用于分布式并行计算或者单机计算。
研究议题:旱区农业科技资源配置情况研究。具体研究内容如下:
2.1 科技装备
2.2 科技投入
2.3 科技计划
2.4 科技条件
2.5 科技服务
研究对象:旱区16个省份——北京、天津、河北、山西、内蒙古、辽宁、吉林、黑龙江、山东、河南、西藏、陕西、甘肃、青海、宁夏、新疆
文本资料:政府公开资料、公共信息、图书、文献…
数据资料:统计年鉴、网页数据、商业数据库信息…
文件夹管理:
囊括了研究涉及的全部材料
分门别类在各个文件夹下
形成目录树
文件以原始状态存放
格式各种各样
《中国科技统计年鉴2018》
数据来源:人大经济论坛
“表1-7 2017年中国RD支出类型”
原始表格有各种”烦人状况”!
《中国科技统计年鉴2010-2018》
数据来源:人大经济论坛
表 中国RD支出类型”(.xls)
取你所需!
《中国科技统计年鉴2010-2018》表 RD支出类型(2010-2017)
数据来源:人大经济论坛
《中国科技统计年鉴2010-2018》
数据来源:人大经济论坛
基本保持原来的数据形态:
《中国科技统计年鉴2010-2018》
数据来源:人大经济论坛
这是一份标准化的数据集!!!
《中国科技统计年鉴2010-2018》
数据来源:人大经济论坛
每一个数据子集被加工完成后,需要继续进行整合
目标是一个标准化的完整数据集!!?
《中国科技统计年鉴2010-2018》
数据来源:人大经济论坛
原始文件没有变量?
变量形式与其含义?
变量命名如何动态调整?
第2章 数据收集、整理和清洗 [2-4节] 数据的数据库化