数据变换、可视化

数据变换、可视化

数据变换前的准备工作:字段过滤、数据探索、相关性分析、建模筛选
  • 在数据变换前,我们需要先对字段进行筛选,然后对数据进行探索和相关性分析,接着是选择算法模型(这里暂时不需要进行模型计算),然后针对算法模型对数据的需求进行数据变换,从而完成数据挖掘前的准备工作。
数据变换通过数据平滑、数据聚集、数据概化和规范化等方式将数据转换成适用于数据挖掘的形式。
常见变换方法:
  1. 数据平滑:去除数据中的噪声,将连续数据离散化,可采用分箱、聚类和回归的方式进行数据平滑。

  2. 数据聚集:对数据进行汇总

  3. 数据概化:将数据由较低的概念抽象成为较高的概念,减少数据复杂度。

  4. 数据规范化:使属性数据按比例缩放,将原来的数值映射到一个新的特定区域中。常用方法:最小—最大规范化、Z—score 规范化、按小数定标规范化等。

    1. Min-max 规范化:将原始数据变换到[0,1]的空间中。新数值=(原数值-极小值)/(极大值-极小值)。

      scikit-learn中调用:preprocessing.MinMaxScaler()

    2. Z-Score 规范化:新数值=(原数值-均值)/ 标准差

      优点:算法简单、不受量纲影响、结果易于比较

      缺点:需要数据整体平均值和方差、结果没有实际意义,仅用于比较

      scikit-learn中的调用:preprocessing.scale()

    3. 小数定标规范化:通过移动小数点的位置来进行规范化。小数点移动多少位取决于属性A的取值中的最大绝对值。

      numpy方法实现:j = np.ceil(np.log10(np.max(abs(x))))

      scaled_x = x/(10**j)

  5. 属性构造:构造出新的属性并添加到属性集中。
    在这里插入图片描述

数据可视化视图根据其目的可分为:
  • 分布
  • 时间相关
  • 局部/整体
  • 偏差
  • 相关性
  • 排名
  • 量级
  • 地图
  • 流动
数据可视化工具:
  • 商业智能分析软件
    • Tableau
    • PowerBI
    • FineBI
  • 可视化大屏
    • DataV
    • FineReport
  • 前端可视化组件:基于web渲染的技术。典型的渲染技术:Canvas、SVG和WebGL。canvas和SVG是HTML5中主要的2D图形技术,WebGL是3D框架。
    • canvas适用于位图。
    • SVG指可缩放矢量图形,使用XML格式定义图形。相当于用点和线来描绘了图形,相比于位图来说文件比较小,而且任意缩放都不会失真。
    • webGL是一种3D绘图协议,能在网页浏览器中呈现3D画面技术,并可交互。
    • 常用的可视化组件: Echarts、D3、Three.js和AntV。
  • 编程语言
    • matplotlib
    • seaborn
可视化视图按照数据间关系可分为比较、联系、构成和分布。
  1. 比较:比较数据间各类别的关系,或者是它们随着时间的变化趋势,比如折线图;
  2. 联系:查看两个或两个以上变量之间的关系,比如散点图;
  3. 构成:每个部分占整体的百分比,或者是随着时间的百分比变化,比如饼图;
  4. 分布:关注单个变量,或者多个变量的分布情况,比如直方图。
按照变量个数可分为单变量分析和多变量分析。
  1. 单变量分析指一次只关注一个变量。
  2. 多变量分析可在一张图上可以查看两个以上变量的关系。
常用视图:散点图、折线图、直方图、条形图、箱线图、饼图、热力图、蜘蛛图、二元变量分布和成对关系。
  • 散点图:适合展现两个变量之间的关系。

    import numpy as np
    import matplotlib.pyplot as plt
    import seaborn as sns
    
    # 数据准备
    N = 1000
    x = np.random.randn(N)
    y = np.random.randn(N)
    # 用Matplotlib画散点图
    plt.scatter(x, y,marker='x')
    plt.show()
    # 用Seaborn画散点图
    df = pd.DataFrame({
         
         'x': x, 'y': y})
    sns.jointplot(x="x", y="y", data=df, kind='scatter');
    plt.show(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sweeney Chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值