**这一部分是一些简单的数据处理的算法。**3
3.1小波变换
小波变换是信号分析手段。能够刻画某个问题的特征量往往是隐藏在一个信号中的一个或者某些分量中,小波变换可以把非平稳信号分解成表达不同层次,不同频带信息的数据序列,也就是小波系数。选取适当的小波系数也就是完成了信号的特征提取。
3.1.1基于小波变换的特征提取方法
主要有四种方法,如表格汇总:
3.1.2小波基函数
3.1.3小波变换
3.1.4基于小波变换的多尺度空间能量分布提取特征
3.2数据规约
数据规约将产生更小但是保持原数据完整性的新数据集。
3.2.1属性规约
下面将详细介绍PCA主成分分析。
主成分分析的计算步骤如下:
在Python中,主成分分析函数在Scikit-learn下:
sklearn.decomposition.PCA(n_componants = None, copy = True, whiten = False)
参数说明:
代码如下:
#coding:utf-8
import pandas as pd
import numpy as np
import matplotlib as plt
inputfile = '/home/xiao/Desktop/analysis/4/principal_component.xls'
outputfile = '/home/xiao/Desktop/analysis/4/ppccaa.xls'
data = pd.read_excel(inputfile, header = None)
from sklearn.decomposition import PCA
pca = PCA()
pca.fit(data)
pca.components_ #返回模型的各个特征向量
pca.explained_variance_ratio_ #返回各个成分的方差百分比
print (pca.components_)
print (pca.explained_variance_ratio_)
由常识可以知道,方差百分比越大,向量的权重越大。
当我们选取前四个主成分时,累计贡献率已经达到97.37%,说明前三个主成分进行计算已经相当不错了,因此可以重建PCA模型,设置n_component = 3,计算出成分结果。
pca = PCA(3)
pca.fit(data)
low_d = pca.transform(data)#降低维度
pd.DataFrame(low_d).to_excel(outputfile)#保存结果
pca.inverse_transform(low_d) #用于还原数据
结果如图所示:
3.2.2数值规约
3.3Python的主要数据与处理函数
(1)interpolate
(2)unique
(3)isnull/notnull
(4)random
(5)PCA
实例:用PCA对10x4维的随机矩阵进行主成分分析