数据归约策略

  • 数据仓库中往往具有海量的数据,在其上进行数据分析与挖掘需要很长的时间
  • 数据归约 
    用于从源数据中得到数据集的归约表示,它小的很多,但可以产生相同的(几乎相同的)效果
  • 数据归约策略 
    维归约 
    数据压缩 
    数值归约 
    离散化和概念分层产生
  • 用于数据归约的时间不应超过或“抵消”在归约后的数据上挖掘节省的时间

维归约

通过删除不相干的额属性和维数减少数据量

  • 属性子集选择 
    1找出最小的属性集,使得数据类的概率分布尽可能接近所有属性的原分布 
    2 减少出现在出现模式上的属性的数目,使得模式更容易于理解
  • 启发式的(探索性的)方法 
    逐步向前选择 
    逐步向后删除 
    向前选择和向后删除相结合 
    判定归纳树(分类算法) 
    基于统计分析的归约:主成分分析,回归分析

数据压缩

  • 有损压缩 vs 无损压缩
  • 字符串压缩 
    有广泛的理论基础和精妙的算法 
    通常是无损压缩 
    在解压缩前对字符串的操作非常有限
  • 音频/视频 压缩 
    通常是有损压缩,压缩精度可以递进选择 
    有时候可以在不解压整体数据的情况下,重构某个片段
  • 两种有损数据压缩的方法: 小波变换和主要成分分析

数值归约

  • 通过选择替代的、较小的数据表示形式来减少数据量
  • 有参方法:使用一个参数模型估计数据,最后只要存储参数即可。 
    线性回归方法 
    多元回归 
    对数线性模型:近似离散的多维数据概率分布
  • 无参方法 
    直方图 
    聚类 
    选样



主成分相关的程序-python 

import pandas as pd 
from sklearn.decomposition import PCA 
inputfile = '../data/principal_component.xls' 
outputfile = '../tmp/dimention_reducted.xls' #降维后的数据 
data = pd.read_excel(inputfile, header = None) #读入数据 
pca = PCA() 
pca.fit(data) 
print pca.components_ #返回模型的各个特征向量 
print pca.explained_variance_ratio_ #返回各个成分各自的方差百分比 
pca = PCA(3) 
pca.fit(data) 
low_d = pca.transform(data) #降低唯独 
pd.DataFrame(low_d).toexcel(outputfile) #保存结果 
pca.inverse_transform(low_d) #复原数据 

数据预处理之数据规约(Data Reduction)的更多相关文章

  1. 第七篇:数据预处理(四) - 数据归约(PCA/EFA为例)

    前言 这部分也许是数据预处理最为关键的一个阶段. 如何对数据降维是一个很有挑战,很有深度的话题,很多理论书本均有详细深入的讲解分析. 本文仅介绍主成分分析法(PCA)和探索性因子分析法(EFA),并给 ...

  2. c++ 数据预处理(数据去噪,归一化)

    正态分布3σ原则,把3倍方差之外的点设想为噪声数据来排除. 归一化,将数据经过处理之后限定到一定的范围内,一般都会将数据限定到[0,1]. #include <iostream>#incl ...

  3. 数据预处理 —— padding数据

    1. 论Conv2d()里的padding和Conv2d()前padding的区别及重要性.   小生建议,尽量少用Conv2d()里的填充方式,换成自定义填充方式(强烈建议).   小生为何这样建议 ...

  4. R语言--数据预处理

    一.日期时间.字符串的处理 日期 Date: 日期类,年与日 POSIXct: 日期时间类,精确到秒,用数字表示 POSIXlt: 日期时间类,精确到秒,用列表表示 Sys.date(), date( ...

  5. R语言数据预处理

    R语言数据预处理 一.日期时间.字符串的处理 日期 Date: 日期类,年与日 POSIXct: 日期时间类,精确到秒,用数字表示 POSIXlt: 日期时间类,精确到秒,用列表表示 Sys.date ...

  6. WEKA中的数据预处理

    数据预处理包括数据的缺失值处理.标准化.规范化和离散化处理. 数据的缺失值处理:weka.filters.unsupervised.attribute.ReplaceMissingValues. 对于 ...

  7. 小白学 Python 数据分析(9):Pandas (八)数据预处理(2)

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  8. python data analysis | python数据预处理(基于scikit-learn模块)

    原文:http://www.jianshu.com/p/94516a58314d Dataset transformations| 数据转换 Combining estimators|组合学习器 Fe ...

  9. Python for Data Analysis 学习心得(三) - 文件读写和数据预处理

    一.Pandas文件读写 pandas很核心的一个功能就是数据读取.导入,pandas支援大部分主流的数据储存格式,并在导入的时候可以做筛选.预处理.在读取数据时的选项有超过50个参数,可见panda ...

随机推荐

  1. PJzhang:kali linux安装网易云音乐、Visual Studio Code、skype

    猫宁!!! 参考链接:https://blog.csdn.net/cloudatlasm/article/details/79183583 https://code.visualstudio.com/ ...

  2. fatal pylint error : ......can't find '__main__'module in

    fatal pylint error : ......can't find '__main__'module in原因是没有安装pylint,所以提示没有找到__main__模块 解决方案:1.到官网 ...

  3. iOS 技术支持

    iOS 技术支持网址:有问题或建议请留言. 邮箱地址:odeyrossskudder4266848@mail.com iOS program design & system consultat ...

  4. 去除vue路由跳转地址栏后的哈希值#

    去除vue路由跳转地址栏后的哈希值#,我们只需要在路由跳转的管理文件router目录下的index.js中加上一句代码即可去掉哈希值# mode:"history" import ...

  5. Codeforces 161C(分治、性质)

    要点 因为当前最大字符只有一个且两边是回文的,所以如果答案包含最大字符则一定是重合部分. 若不包含,则用此字符将两个区间分别断为两部分,则共有四种组合,答案一定为其中之一. #include < ...

  6. bzoj1095: [ZJOI2007]Hide 捉迷藏 动态点分治学习

    好迷啊...感觉动态点分治就是个玄学,蜜汁把树的深度缩到logn (静态)点分治大概是递归的时候分类讨论: 1.答案经过当前点,暴力(雾)算 2.答案不经过当前点,继续递归 由于原树可以长的奇形怪状( ...

  7. poj3728The merchant树剖+线段树

    如果直接在一条直线上,那么就建线段树 考虑每一个区间维护最小值和最大值和答案,就符合了合并的条件,一个log轻松做 那么在树上只要套一个树剖就搞定了,多一个log也不是问题 注意考虑在树上的话每一条链 ...

  8. mac下配置php+mysql+nginx遇到的问题

    1.mysql:没有useradd和groupadd命令,好在原来的/etc/passwd有了mysql,www用户,/etc/group下也有了mysql,www用户组 2.nginx:编译ngin ...

  9. HttpServletRequest 和 HttpServletResponse

    Servlet配置方式 全路径匹配 以 / 开始 /a /aa/bb localhost:8080/项目名称/aa/bb 路径匹配 , 前半段匹配 以 / 开始 , 但是以 * 结束 /a/* /* ...

  10. stm32的低功耗模式:

    一.待机模式.待机模式是低功耗中最低功耗的,内部电压调节电路被关闭,  HSE.HIS.PLL被关闭:进入待机模式后,SRAM和寄存器的内容将丢失.  (CPU停止,外设停止,RAM的数据寄存器的内容 ...