教程丨手把手教你做数据挖掘 !(附教程数据源)
转载自:数据派THU(ID:DatapiTHU)
作者:宋莹
本文主要介绍基于集成学习的决策树,其主要通过不同学习框架生产基学习器,并综合所有基学习器的预测结果来改善单个基学习器的识别率和泛化性。
引言
一、什么是数据挖掘
二、为什么需要数据挖掘
三、演化过程
四、数据挖掘的具体步骤
- 数据清理(消除噪声和不一致数据)
- 数据集成(不同来源与格式的数据组合到一起)
- 数据选择(挖掘所需的数据)
- 数据变换(数据变换成适合挖掘的形式,如汇总,聚集操作)
- 数据挖掘(方法,建模)
- 模式评估(结果模型)
- 知识表示(可视化)
五、数据挖掘的系统结构
六、对何种数据进行挖掘
原则上讲,数据挖掘可以应用于任何类型的信息存储库及瞬态数据(如数据流),如数据库、数据仓库、数据集市、事务数据库、空间数据库(如地图等)、工程设计数据(如建筑设计等)、多媒体数据(文本、图像、视频、音频)、网络、数据流、时间序列数据库等。
七、挖掘任务
数据挖掘功能用于指定数据挖掘任务要找的模型类型。一般而言,数据挖掘任务可以分为两类:描述和预测。描述性挖掘任务描述数据库中数据的一般性质。预测性挖掘任务对当前数据进行推断,以做出预测。其中描述类任务包含:特征化和区分等。
针对“特征化”,我们来举一个简单的例子:数据挖掘系统应当能够产生数据挖掘工程师特征的汇总描述,作为对该职位招聘的依据。结果可能是符合该职位的一般轮廓,如计算机相关专业、熟悉常用的数据挖掘算法、会使用统计分析工具、大数据开发经验等。那么,什么又是“区分”呢?继续之前的例子,数据挖掘系统应当能够描述出优秀数据挖掘工程师与一般数据挖掘工程师的轮廓。
优秀的数据挖掘工程师:超强的讲故事的能力、逻辑思维强、终身学习、喜欢用数学模型解决实际的问题。一般的数据挖掘工程师:了解常用数据挖掘算法、对工作能够积极完成、对挖掘结果无法清晰描述给相关人、不会主动学习该行业知识、从事此行业只是为了赚钱。这两个轮廓将作为我们评判优劣的依据。预测类任务为:关联分析、分类和预测、聚类分析、孤立点分析和趋势和演变分析等。下面章节的实例将介绍其中某些预测类模型。在这里就不再赘述。
八、挖掘什么模式的数据
九、数据挖掘的局限性
十、数据挖掘实例
1.准备工作
1.1Rapidminer工具简介
1.2Rapidminer安装
1.3Rapidminer配置
图 5:创建数据库链接
图 6:数据库连接名
2.数据挖掘实例演示
2.1商业理解
为了让大家体验真实的、完整的数据挖掘流程。我对一个真实的商业问题做了一个市场调查。并通过这个市场调查结果进行分析。要想把这个商业问题说清楚,我必须在这里介绍一下我的情况。
去年年底,我的女儿出生了。由于家里无人可以帮忙照顾,只好辞职在家全职带宝宝。也跟大多数的全职妈妈一样,成为了一个名副其实的微商。由于本人特别喜欢看书,就在微信上做起了卖书的小生意。我的生意以童书为主。在卖书的过程中,我发现爱给孩子买书的家长大多数自己本身就喜欢看书或者有学习意识。为了更精准的定位我的目标客户。我设计了一份专门针对宝妈的调查问卷,目的就是要研究爱学习的宝妈身上都有哪些特质。根据这些特质去有针对性的寻找我的目标客户,进而提高销量。
2.2数据理解
在“宝妈情况问卷调查”中,我设计了20个与宝妈日常生活息息相关的问题,其具体内容如下:
1.姓名(m_name):调查者的姓名。由于本篇文章会在公众平台上发表,对姓名我会做脱敏处理,只留下“姓”作为区分宝妈的依据,如:“吴军”会被展示成“吴**”。
2.学历(eduction):调查者的学历信息。
3.专业(major):调查者的专业信息。
4.年龄(age):调查者的年龄。
5.工作年限(work_seniority):调查者的工作年限。
6.工作岗位(m_work):调查者的工作岗位。
7.孩子小名(nickname):宝宝的小名。由于孩子真实姓名也比较敏感,所以这里只填写小名。
8.孩子年龄(child_age):宝宝的年龄。
9.孩子性别(child_sex):宝宝的性别。
10.你认为自己家的孩子是否好带(care_level):
1——4,1表示好带,4表示特别不好带。
选项A.1 B.2 C.3 D.4
11.你现在当前的状态(state_now):
A.全职在外工作 B.兼职在外工作 C.兼职在家 D.全职带娃 E.其它
12. 如果是自己带娃,其原因(myself_care_reason):
A.无人给带 B.别人带娃不放心 C.特别想自己带 D.其它
13. 作为女性,你认为工作和生活哪个更重要(m_import):
A.工作 B.生活 C.全都重要 D.具体哪个重要也说不清
14. 如果有别人给带娃,那个人是谁(care_child_people):
A.爸爸妈妈 B.公公婆婆 C.其它亲戚 D.育儿嫂
15. 如果爸爸妈妈或公公婆婆想把孩子带老家养,什么都不用你们管,是否同意(go_home_or_not):
A.同意 B.不同意
16. 工作\带娃的空闲时间是否考虑过学些专业知识提高自己的竞争力(study_or_not):
A.是 B.否
17. 有没有学习过专业的育儿经验(parenting_knowledge_or_not):
A.学过 B.没学过
18. 是否认为自己是一个称职的妈妈(qualified_mothers_or_not):
A.称职 B.不称职
19.如果有一个网站专门提供在家上班的工作,工作不耽误带娃,薪资水平也也不错,是否考虑注册一个账号,并在上面找一个合适的工作(work_home_or_not):
A.考虑 B.不考虑
20. 作为宝妈,你是否有时候感觉自己心情很低落,像是得了抑郁症,很需要别人进行情感疏导(mothers_mood):
A.有 B.没有,心情一直很好
2.3数据准备
在接下来的数据准备阶段,大家可以按照如下地址来下载所需的数据:
https://pan.baidu.com/s/145ljBAR2V0bG8FcXGL3j9A
2.3.1数据收集
图 13:腾讯问卷原始文件截图
2.3.2数据清洗
图 15:新建流程“1纸质问卷数据清洗过程”目录
图 16:纸质调查问卷部分内容
图 18:新建流程“1腾讯问卷数据清洗过程”目录
图 19:腾讯调查问卷部分内容
2.3.3数据集成
图 21:新建流程“2.数据集成”目录
图 22:流程“1纸质问卷数据清洗过程”结果
图 23:流程“1腾讯问卷数据清洗过程”结果
2.3.4数据选择
图 25:新建流程“3.数据选择”目录
图 26:流程“2数据集成”结果
2.3.5数据变换
图 28:新建流程“4.数据变换”目录
图 29:流程“3数据选择”结果
其中专业信息映射:
其中工作岗位信息映射:
2.3.6离群点分析
图 31:新建流程“5离群点分析”目录
图 32:流程“4数据变换”结果
图 33:流程“5离群点分析”
图 34:离群点分析结果
图 35:离群点分析图表展示1
图 36:离群点分析图表展示2
2.3.7处理离群点
图 38:新建流程“6处理离群点”目录
2.4.建模
2.4.1决策树
2.4.2决策树建模
图 40:新建流程“7决策树建模”目录
图 41:流程“6处理离群点”结果
图 42:流程“决策树建模”
图 43:决策树模型运行结果
图 44:决策树模型结果描述
决策树建模解读:
(1)“读取处理离群点后数据”的作用是将流程“6处理离群点”(在数据库questionnaire_deal表中存放)的结果读取出来。(Read Database控件)
(2)“数据类型转换”的作用是将要预测的study_or_not(空闲时间是否学习)字段的数据类型转换成字符型。(Numerical to Polynominal控件)
(3)“设置角色”的作用是将m_name(姓名)列的角色设置成ID唯一标识,并且将study_or_not(空闲时间是否学习)列设置成label标识(rapidminer中需要将预测列标识成label字段才可以执行流程)。(Set Role控件)
(4)“决策树模型”的作用是应用该模型对现有数据进行预测。如“图43:决策树模型运行结果”是决策树模型的运行结果。(Decision Tree控件)
2.5.评价
2.5.1决策树模型评估
1.在Rapidminer中新建一个流程,名字叫“8决策树评估”。这个流程的主要目的是由于建模过程形成的众多结果,我们没有办法去判断哪个模型最符合现实的情况,因此,我们需要对所建的模型进行评估,通过评估结果来选择预测最准确的那个模型。具体情况如下所示:
图 45:流程“8决策树评估”目录
图 46:流程“8决策树评估”
图 47:流程“8决策树评估”2
图 48:模型评估控件参数设置
6.部署
6.1可视化展示
图 50:决策树模型运行结果
图 51:决策树模型结果描述
7.小结
图 52:决策树评估中设置的角色
类别 |
中文值 |
转换值 |
study_or_not(工作\带娃的空闲时间是否考虑过学些专业知识提高自己的竞争力) |
A.是 |
1 |
study_or_not(工作\带娃的空闲时间是否考虑过学些专业知识提高自己的竞争力) |
B.否 |
2 |
m_import(作为女性,你认为工作和生活哪个更重要) |
A.工作 |
1 |
m_import(作为女性,你认为工作和生活哪个更重要) |
B.生活 |
2 |
m_import(作为女性,你认为工作和生活哪个更重要) |
C.全都重要 |
3 |
m_import(作为女性,你认为工作和生活哪个更重要) |
D.具体哪个重要也说不清 |
4 |
eduction(学历) |
初中 |
1 |
eduction(学历) |
高中 |
2 |
eduction(学历) |
中专 |
3 |
eduction(学历) |
大专 |
4 |
eduction(学历) |
职高 |
5 |
eduction(学历) |
大学本科 |
6 |
eduction(学历) |
本科 |
6 |
eduction(学历) |
硕士 |
7 |
eduction(学历) |
研究生 |
7 |
eduction(学历) |
无 |
0 |
综上所述,笔者想要找到爱学习的宝妈,通过模型可以看出爱学习的宝妈有两部分组成,一部分是认为工作与生活全都重要的人。另一部分是认为工作、生活有一个重要,并且学历在本科以下的人。
教程丨手把手教你做数据挖掘 !(附教程数据源)相关推荐
- Blender图解教程:手把手教你做一个马里奥金币 之 图片转法线贴图法(附模型下载)
<Blender图解教程:手把手教你做一个马里奥金币 之 比较传统的方法>介绍了一种用Blender制作法线贴图的流程,本文介绍一种更加省事的方法. 步骤 效果图 概要 步骤 1. 建模 ...
- Blender图解教程:手把手教你做马里奥问号箱 二 强迫症修复版(附模型下载)
看完 <Blender图解教程:手把手教你做马里奥问号箱>有强迫症同学反应对最后的结果不能忍.那么老王教大家修复一下.初学的同学可以通过这个例子进一步理解一下什么是UV. 修复前 如果你没 ...
- 独家 | 手把手教你做数据挖掘 !(附教程数据源)
作者:宋莹 本文长度为10427字,建议阅读20+分钟 本文为你介绍数据挖掘的知识及应用. 引言 最近笔者学到了一个新词,叫做"认知折叠".就是将复杂的事物包装成最简单的样子,让大 ...
- Blender图解教程:手把手教你做马里奥问号箱 一 强迫症慎用版(附模型下载)
效果图 材质预览模式 EEVEE渲染 文章目录 效果图 要点 步骤 1. 低模 2. 高模 3. 烘焙法线贴图 4. 材质 要点 凹凸细节通过法线贴图实现 6个面是相同的,尽量避免重复劳动 步骤 1. ...
- Blender图解教程:手把手教你做一个马里奥金币 之 高模烘焙法(附模型下载 4月23日更新)
本文是<[手把手带你Godot游戏开发 第二弹]名场面临摹>中马里奥·奥德赛教程的一部分. 文章目录 效果图 1. 低模 2. 高模 3. 烘焙法线贴图 a. 为低模添加材质 b. 设置窗 ...
- Blender图解教程:手把手教你做一个马里奥金币 之 纯建模方法(附模型下载)
概要 这种方法其实是通过图像处理软件和法线贴图转换工具,直接生成法线贴图.在本例中最重要的部分在于位置对齐. 步骤 新建柱体,在两个圆面内插面 选择两个圆面,按Alt + E选择沿法向挤出面,然后滑动 ...
- [教程] ROM定制教程:手把手教你做ROM(已整理到第五部分...)
教程大体分为以下几部分: 1.ROM基础知识......................................(1) 2.ROM制作工具介绍......................... ...
- ROM定制教程:手把手教你做ROM
授人以渔吧,大家好才是真的好! 很 早就说出个教程了,想了好长时间不知道该怎么出,关于ROM定制,要了解的东西确实比较多,想出个完善的教程不是件容易的事,一来发此类教程贴的工作量非 常之大:二来本人水 ...
- 前端教程丨手把手教你用 Next.js 搭建个人博客,从入门到吃鸡
React.js 是现今前端最火的应用框架之一,而 **Next.js 正是 React.js 领域最优秀的服务端渲染框架之一.**基本上,现在所有的前端主流形式,从服务端渲染 APP,静态站到桌面应 ...
最新文章
- java if and_Java运算符-if分支语句
- java一定时间间隔的定时任务_Java 定时任务---Timer
- Leaflet中通过setStyle实现图形样式编辑
- python统计库_python-科学计算常用库
- ZDOzMRVAOq
- mysql最大连接数512_MySQL服务器最大连接数怎么设置才合理
- [PAT乙级]1021 个位数统计
- mock 抛出一个异常如何终止_教你使用Mock完成单元测试
- python的Web编程
- layui 表单动态添加、删除input框
- type或者xtype总结
- mybatis resultType resultMap
- 光影魔术手的抠图功能
- 微软2011年10月最有价值专家(MVP)名单 51CTO十三位用户当选
- Linux 视频教程 ( 猿课 )
- python中digits用法_在sklearn digits examp中使用自己的图像
- 论文阅读笔记:ShuffleNet
- 包容普通的父亲和母亲
- 翻译Computer Relaying for Power Systems-2nd Edition(Arun G. Phadke, James S. Thorp)
- PCB 设计 3. 原理图及其封装制作
热门文章
- 城市精细化治理过程中的智能图像识别如何更精准、更智能?
- ChatGPT搞砸了~,如何使用VBA导出Word文档中的图片
- NUnit 入门知识
- 重装系统后服务器不提示用户密码,明明没有设置密码,重装系统后开机要求输入帐号密码咋办?...
- 中国蒸汽眼罩市场销售趋势及营销渠道策略报告(新版)2022-2027年
- 打入苹果ipad的大陆芯片供应商
- ff15测试软件翻译,最终幻想15数据详细分析 FF15详细的数值参数测试
- 友宝在线在港交所上市申请“失效”:连续两年亏损,王滨为大股东
- OBS Studio显示器黑屏
- OBS Studio 27.0.1版本编译