数据分析-概念

来源:互联网 发布:马士兵java教学视频 编辑:程序博客网 时间:2024/05/20 18:18

这里写图片描述

一、 数据取样


1.数据抽取

在明确了需要进行数据挖掘的目标后,接下来就需要从业务系统中抽取出一个与挖掘目标相关的样本数据子集。抽取数据的标准,一是相关性,二是可靠性,三是有效性,而不是动用全部企业数据。通过数据样本的精选,不仅能减少数据处理量,节省系统资源,而且使我们想要寻找的规律性更加突显出来。

进行数据取样,一定要严把质量关。在任何时候都不能忽视数据的质量,即使是从一个数据仓库中进行数据取样,也不要忘记检查其质量如何。因为数据挖掘是要探索企业运作的内在规律性,原始数据有误,就很难从中探索规律性。若真的从中还探索出来了什么“规律性”,再依此去指导工作,则很可能会造成误导。若从正在运行的系统中进行数据取样,更要注意数据的完整性和有效性。

2.衡量取样数据质量的标准包括:

1) 资料完整无缺,各类指标项齐全。
2) 数据准确无误,反映的都是正常(而不是异常)状态下的水平。
对获取的数据,可再从中作抽样操作。抽样的方式是多种多样的,常见的有:

随机抽样:在采用随机抽样方式时,数据集中的每一组观测值都有相同的被抽样的概率。如按10%的比例对一个数据集进行随机抽样,则每一组观测值都有10%的机会被取到。

等距抽样:如按 5%的比例对一个有100 组观测值的数据集进行等距抽样,则有:100 / 5 = 20,等距抽样方式是取第20、40、60、80 和第100 五组观测值。

分层抽样:在这种抽样操作时,首先将样本总体分成若干层次(或者说分成若干个子集)。在每个层次中的观测值都具有相同的被选用的概率,但对不同的层次可设定不同的概率。这样的抽样结果通常具有更好的代表性,进而使模型具有更好的拟合精度。

从起始顺序抽样:这种抽样方式是从输入数据集的起始处开始抽样。抽样的数量可以给定一个百分比,或者直接给定选取观测值的组数。

分类抽样:在前述几种抽样方式中,并不考虑抽取样本的具体取值。分类抽样则依据某种属性的取值来选择数据子集。,如按客户名称分类、按地址区域分类等。分类抽样的选取方式就是前面所述的几种方式,只是抽样以类为单位。

二、数据预处理


1.当采样数据维度过大时,如何进行降维处理、缺失值处理等都是数据预处理要解决的问题。

2.由于采样数据中常常包含许多含有噪声、不完整、甚至不一致的数据,对数据挖掘所涉及的数据对象必须进行预处理。那么如何对数据进行预处理以改善数据质量,并最终达到完善最终的数据挖掘结果的目的呢?
针对采集的餐饮数据,数据预处理主要包括:数据筛选、数据变量转换、缺失值处理、坏数据处理、数据标准化、主成分分析、属性选择、数据规约等

三、常用数据挖掘建模工具


数据挖掘是一个反复探索的过程,只有将数据挖掘工具提供的技术和实施经验与企业的业务逻辑和需求紧密结合,并在实施过程中不断地磨合,才能取得好的效果。下面简单介绍几种常用的数据挖掘建模工具:

  1. R
    R 是一种为统计计算和图形显示而设计的语言环境,是贝尔实验室的Rick Becker,John Chambers和Allan Wilks开发的S语言的一种实现。在S语言源代码的基础上,1995年Auckland 大学的Robert Gentleman和Ross Ihaka 编写了一套能执行S语言的软件,并将该软件的源代码全部公开,这就是R软件的雏形,其命令被统称为R语言。用户可以自己设计相应的程序,并且可以做成拓展包发布。其他的使用者可以根据需要下载并加载软件包,从而非常方便的拓展R的内容。
  2. Python
    Python是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单而又高效的方式进行面向对象编程。Python优雅的语法和动态类型,再结合它的解释性,使其在大多数平台的许多领域成为编写脚本或开发应用程序的理想语言。
  3. SAS Enterprise Miner
    Enterprise Miner(EM)是SAS推出的一个集成的数据挖掘系统,允许使用和比较不同的技术,同时还集成了复杂的数据库管理软件。它的运行方式是通过在一个工作空间(workspace)中按照一定的顺序添加各种可以实现不同功能的节点,然后对不同节点进行相应的设置,最后运行整个工作流程(workflow),便可以得到相应的结果。
  4. IBM SPSS Modeler
    IBM SPSS Modeler原名Clementine,2009年被IBM收购后对产品的性能和功能进行了大幅度改进和提升。它封装了最先进的统计学和数据挖掘技术,来获得预测知识并将相应的决策方案部署到现有的业务系统和业务过程中,从而提高企业的效益。IBM SPSS Modeler拥有直观的操作界面、自动化的数据准备和成熟的预测分析模型,结合商业技术可以快速建立预测性模型。
  5. SQL Server
    Microsoft的SQL Server中集成了数据挖掘组件——Analysis Servers,借助SQL Server的数据库管理功能,可以无缝地集成在SQL Server数据库中。在SQL Server2008中提供了决策树算法、聚类分析算法、Naive Bayes 算法、关联规则算法、时序算法、神经网络算法、线性回归算法等9种常用的数据挖掘算法。但是其预测建模的实现是基于SQL Server平台的,平台移植性相对较差。
  6. MATLAB
    MATLAB(Matrix Laboratory,矩阵实验室)是美国Mathworks公司开发的应用软件,具备强大的科学及工程计算能力,它不但具有以矩阵计算为基础的强大数学计算能力和分析功能,而且还具有丰富的可视化图形表现功能和方便的程序设计能力。MATLAB并不提供一个专门的数据挖掘环境,但它提供非常多的相关算法的实现函数,是学习和开发数据挖掘算法的很好选择。
  7. WEKA
    WEKA (Waikato Environment for Knowledge Analysis)是一款知名度较高的开源机器学习和数据挖掘软件。高级用户可以通过Java编程和命令行来调用其分析组件。同时,WEKA也为普通用户提供了图形化界面,称为WEKA Knowledge Flow Environment和WEKA Explorer,可以实现预处理、分类、聚类、关联规则、文本挖掘、可视化等。
  8. RapidMiner
    RapidMiner也称为YALE(Yet Another Learning Environment,https://rapidminer.com),提供图形化界面,采用类似Windows资源管理器中的树状结构来组织分析组件,树上每个节点表示不同的运算符(operator)。YALE中提供了大量的运算符,包括数据处理、变换、探索、建模、评估等各个环节。YALE是用Java开发的,基于Weka来构建,可以调用Weka中的各种分析组件。RapidMinner有拓展的套件Rhadoop,可以和Hadoop集成起来,在Hadoop集群上运行任务。

By

——imbenben

0 0
原创粉丝点击