数据归约策略

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

维归约

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

  • 属性子集选择 
    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. CentOS6.7上安装nginx1.8.0

    主题: CentOS6.7上安装nginx1.8.0 环境准备: 1.gcc-c++ 示例:yum install gcc-c++ 安装:gcc-c++ gcc-c++编译工具 2.PCRE(Perl ...

  2. iOS文字转语音(语音朗读)

    1.第一步导入framework 2.导入头文件 #import <AVFoundation/AVSpeechSynthesis.h> 3. 设置代理 并写下面方法  (注:代理方法用不到 ...

  3. GDPR(Cookie处理)

    GDPR(Cookie处理) https://www.cnblogs.com/GuZhenYin/p/9154447.html 前言 时间一晃 ASP.NET Core已经迭代到2.1版本了. 迫不及 ...

  4. ssis-oracle 数据流任务

    [OLE DB 源 1 [16]] 错误: SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.对连接管理器“F360DB”的 A ...

  5. awk单引号处理

    awk中使用单引号,常规字符串,'\''即可,但如果像下面在$4变量用单引号,则还需要加上双引号才行. cat 2.txt | awk '{ print $1, $2, $3, "'\''& ...

  6. java jmap

    jmap : 命令用于生成堆转储快照.它还可以查询finalize执行队列.Java堆和永久代的详细信息,如空间使用率.当前用的是哪种收集器等. 命令格式: jmap [option] vmid op ...

  7. C#基础文件file的各种套路

    File的各种套路 //创建一个文件 //File.Create(@"C:\Users\SpringRain\Desktop\new.txt"); //Console.WriteL ...

  8. 模板引擎doT.js

    作为一名前端攻城师,经常会遇到从后台ajax拉取数据再显示在页面的情境,一开始我们都是从后台拉取再用字符串拼接的方式去更达到数据显示在页面! <!-- 显示区域 --> <div i ...

  9. u-boot剖析(一)----Makefile分析

    由于u-boot比较庞大,所以我们分开来分析,对于一个大型的项目我们想快速的了解其代码架构和内容,最方便的方法就是分析Makefile,所以我们今天以三星的s3c2440来分析Makefile.我们今 ...

  10. SQL Server 查询性能优化——创建索引原则

    索引是什么?索引是提高查询性能的一个重要工具,索引就是把查询语句所需要的少量数据添加到索引分页中,这样访问数据时只要访问少数索引的分页就可以.但是索引对于提高查询性能也不是万能的,也不是建立越多的索引 ...