当前位置:   article > 正文

数据挖掘学习之路_数据挖掘学习路线

数据挖掘学习路线

前言

记录一下学习数据挖掘的历程


一、数据挖掘

从数据集合中提取人们感兴趣的知识,这些知识是隐含的、事先未知的、潜在的有用信息。提取出来的知识一般为概念、规则、规律、模式等形式。在大数据的背景之下,数据分析不需要具备概率分布的先验知识,限制条件更少,更为灵活高效。大数据已被应用于各个领域,包括宏观经济、金融、电力系统、医疗服务、电子商务以及社交网络等。

二、大数据分析与挖掘主要技术

主要分为如下几个步骤:
 任务目标的确定
 目标数据集的提取
 数据预处理(数据清洗、数据转换、数据集成、数据约减等操作)
 建立适当的数据分析与挖掘模型(如统计分析、分类和回归、聚类分析、关联规则挖掘、异常检测等)
 模型的解释与评估
 知识的应用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
数据挖掘主要包括如下的功能:
 对数据的统计分析与特征描述(统计分析包括对数据分布、集中与发散程度的描述、主成分分析,数据之间的相关性分析等。特征描述的结果可以用多种方式进行展示,例如:散点图、饼状图、直方图、函数曲线、透视图等。)
 关联规则挖掘和相关性分析:
 分类和回归(分类例如:决策树、贝叶斯分类器、KNN分类器、组合分类算法等。回归是对数值型的函数进行建模,常用于数值预测。)
 聚类分析(对未知类别标号的数据进行直接处理。聚类的目标是使聚类内数据的相似性最大,聚类间数据的相似性最小。)
 异常检测或者离群点分析
  • 1
  • 2
  • 3
  • 4
  • 5

三、数据特征分析:

数据集类型:

结构化数据(通常以文本文件储存,例如:鸢尾花分类的训练集)
半结构化数据(主要有XML文档和JSON数据)
非结构化数据(没有预定义的数据模型,例如:邮件、客户评价反馈、财务报表、计算机系统的各种日志等、音频、图像(医学影响、卫星遥感图像等)、视频(监控录像、电视节目等)。
  • 1
  • 2
  • 3

数据属性的类型:

标称属性(类似于标签,其中的数字或者符号只是用来对物体进行识别和分类)
序数属性(不仅包含标称属性的全部特征,还反映对象之间的等级和顺序)
数值属性(包含区间标度属性和比率标度属性)。
  • 1
  • 2
  • 3

数据的描述性特征:

集中趋势的描述:
均值(算术平均数、加权平均数、几何平均数)、中位数、众数
  • 1
离散程度的描述:
极差、四分位数、方差、标准差
  • 1
分布形态的描述:
偏态系数、峰态系数
  • 1

数据分布形态的度量:

数据的偏态分布及度量(偏态系数、样本偏态系数)
数据峰度及度量(衡量数据分布的平坦度)
数据偏度和峰度(用于估计数据分布与正态分布的差异)
  • 1
  • 2
  • 3

数据分布特征的可视化:

箱型图(五数概括法)
正态分布
  • 1
  • 2

数据相关性分析:

散点图(直观判断相关性)
相关系数(协方差,反应两个属性在变化过程中是同方向变化,还是反方向变化)
  • 1
  • 2

四、数据预处理

数据清理

脏数据形成的原因:
不正确的数据:设备故障,人为输入错误,默认值提交,数据传输过程中产生的错误等。
不一致性:滥用缩写词,不同的惯用语,拼写变化,过时的编码,不同的计量单位等。
不完整数据:丢失值,信息收集不全,各种故障等。
重复记录:同一数据存储多次。
含有各种噪声:由误差造成的,也有可能是人为错误造成的。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

数据清理处理的内容

  • 缺失值填充
  • 平滑噪声
  • 识别和去除离群点
  • 解决不一致性

缺失值识别

  • 可利用pandas提供的方法:

    print("含有空值的列数:",data.isnull().any(axis=0).sum())
    print(data.isnull().any())  #.isnull().any() 用来判断列是否有缺失值
    
    • 1
    • 2

空值检测

从糖尿病病人体检数据集入手

“糖尿病病人体检数据集”集包含了42个维度,用pandas、numpy、sklearn进行处理 维度例如:id,性别,年龄,体检日期,*天门冬氨酸氨基转换酶,*丙氨酸氨基转换酶,*碱性磷酸酶,*r-谷氨酰基转换酶,*总蛋白,白蛋白,*球蛋白,白球比例,甘油三酯,总胆固醇,高密度脂蛋白胆固醇....
import pandas as pd
train_data = pd.read_csv('d_train_20180102.csv',encoding='gbk')
print(train_data.columns)
print(train_data.head)
print(train_data.isnull().sum())
  • 1
  • 2
  • 3
  • 4
  • 5

数据集查看

处理缺失值的方法:

(1)删除法

import pandas as pd
diabetes_data = pd.read_cs
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/155384
推荐阅读
相关标签
  

闽ICP备14008679号