zoukankan      html  css  js  c++  java
  • 数据分析与数据挖掘

    一 数据分析的定义

    数据分析就是用合适的方法来发挥出数据的最大价值,这是一门结合了统计学,高等数学,工程学,商业决策等知识的技能,其中高等数学,工程学和统计学这些都是硬技能,而商业决策是属于软技能,数据分析师就是具备这些技能的岗位。数据分析师也有所侧重点,有的人是商业出身,偏向于商业领域,有的人是统计学出身,偏向于统计领域,有的人是工程学出身,更偏向于it领域。企业在进行招聘的时候,他们会根据自己的需求选择合适的数据分析师。

    显然,我是工程领域出身,我们的课程是偏向于it领域的,适合往it领域发展的程序员入门学习,或者商业领域,统计学领域的数据分析师补充自己。

    二 数据分析的产生

    在如今的互联网企业的发展中,流量的增长是一个永恒不变的话题。我们知道拉一个新用户的成本要远高于维护一个老客户的成本。既然这样,如果我们能够让老客户产生价值,推出合适的营销策略或者老带新类似这样的方案,就能够用更少的成本产生更大的价值,这也就是数据分析师存在的理由。

    三 数据分析的发展

    早期的数据分析是使用excel,即使现在也有很多商业领域的数据分析人员依旧在使用。除此之外,还有一些数据分析商用的软件,比如tableau,spss等等。所使用的方式是先从服务器导出数据到软件当中去,然后通过一个功能函数进行数据的处理,比如excel中可以使用vlookup函数来进行纵向查找,最后再进行可视化的处理。显然,早起的数据分析更侧重于呈现结果,然后根据结果对企业的发展作出预测。

    具体的过程如下所示:

    1. 分析现状-通过可视化的现状来直观描述企业经营发展中的情况
    2. 发现问题-从呈现结果中预测可能问题的原因
    3. 收集加工-使用更多的数据来验证问题的产生源头
    4. 分析策略-结合业务场景分析用户或者商品的现状
    5. 提出方案-根据商业逻辑和分析结果提出有效解决方案

    我们能够预见的是,早期数据量比较少,一般都是以G为单位,类似于excel,tableau和spss这样的软件,所能够处理的数据量是有限的,当数据量达到T,TB甚至更大的量级是,这是无法处理的。这就需要it领域的知识来处理这些海量的数据,比如使用MySQL,hlive,hbase等等。

    四 数据分析VS数据挖掘

    除了数据分析之外,你一定还听说过数据挖掘,那么他们之间有什么异同呢?首先现在的大多数企业已经模糊了对数据分析与数据挖掘的区别,但是他们还是有所差异,具体如下:

    1. 数据分析更多采用统计学的知识,对源数据进行描述性和探索性分析,从结果中发现价值信息来评估和修正现状。数据挖掘不仅仅用到统计学的知识,还要用到机器学习的知识,这里会涉及到模型的概念。数据挖掘具有更深的层次,来发现未知的规律和价值。
    2. 从侧重点上来说,相比较而言,数据分析更多依赖于业务知识,数据挖掘更多侧重于技术的实现,对于业务的要求稍微有所降低。
    3. 从数据量上来说,数据挖掘往往需要更大数据量,而数据量越大,对于技术的要求也就越高。
    4. 从技术上来说,数据挖掘对于技术的要求更高,需要比较强的编程能力,数学能力和机器学习的能力。
    5. 从结果上来说,数据分析更多侧重的是结果的呈现,需要结合业务知识来进行解读。而数据挖掘的结果是一个模型,通过这个模型来分析整个数据的规律,一次来实现对于未来的预测,比如判断用户的特点,用户适合什么样的营销活动。显然,数据挖掘比数据分析要更深一个层次。

    五 机器学习的流程

    上文中我们提到了数据挖掘需要用到机器学习的知识,其实数据挖掘与机器学习的流程是一样的,具体如下:

    1. 数据源-企业生产中所产生的数据
    2. 预处理-处理脏数据,比如有缺失值,异常值等等,修改数据的格式
    3. 特征工程-把数据抽象成我们需要的指标或特征
    4. 数据建模-搭建机器学习的模型,用该模型来训练数据
    5. 数据验证-使用测试数据来验证我们的模型

    六 数据的产生

    很多时候我们会发现在浏览网站或者app时总会给我们推荐一些与我们相关的信息,这其实就是根据我们的互联网行为来进行预测的,前端获取到用户的行为数据,传输到后端,然后存储到服务器上,具体行为如下:

    1. 浏览网页时或者app时,你的点击和停留行为都会被服务器所记录,最终存储到数据库上
    2. 浏览购物app时,你的订单,添加购物车,收藏,关注等行为
    3. 浏览快手,抖音等洗脑app时,你的关注,停留,评论,点赞,转发等行为都会被记录在服务器上

    七 数据预处理

    预处理就是提前处理一下,当把数据从源中读取出来之后,我们可能会发现有些数据不符合我们的要求,比如有缺失值或者异常值(年龄为0),我们的处理可能是删除,也可能是填充,我们把这些脏数据整理成干净的数据。除此之外,我们可能还需要进行数据的变换,把原始数据转化成符合模型要求的数据。

    八 数据建模

    数据清洗完了之后,进行可视化展示,然后我们使用一条线去拟合这些点,这条线就是一个函数,有了这个函数我们就可以进行预测,这个函数就是一个模型,这就是数据建模的过程。
    image.png

    原创作者:马一特
    文章出处:http://www.cnblogs.com/mayite/
    版权声明:自由转载-非商用-非衍生-保持署名 (创意共享4.0许可证)
    转载说明:如果文章对您有帮助,欢迎点赞,评论加转载,赠人玫瑰,手留余香
  • 相关阅读:
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之六 多点触控
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之九 定位
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之七 重力感应
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之五 保存数据的几种方式
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之八 照相机
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之三 Application 配置详解
    Adobe Flash Builder 4.5 Android Air 程序开发系列 之四 打开与关闭应用程序是的保存数据
    ADOBE FLASH BUILDER 4.6 IOS 开发之部署与调试
    [译] 高性能JavaScript 1至5章总结
    页签及盒子的web标准实现
  • 原文地址:https://www.cnblogs.com/mayite/p/13589187.html
Copyright © 2011-2022 走看看