sklearn中的PCA

sklearn中的PCA

详见–>http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html

导入库

from sklearn.decomposition import PCA

参数

pca = PCA(n_components=None, copy=True, whiten=False)

n_components:

意义:PCA算法中所要保留的主成分个数n,也即保留下来的特征个数n

类型:int 或者 string,缺省时默认为None,所有成分被保留。

      赋值为int,比如n_components=1,将把原始数据降到一个维度。

      赋值为string,比如n_components='mle',将自动选取特征个数n,使得满足所要求的方差百分比。

copy:

类型:bool,True或者False,缺省时默认为True。

意义:表示是否在运行算法时,将原始训练数据复制一份。若为True,则运行PCA算法后,原始训练数据的值不会有任何改变,因为是在原始数据的副本上进行运算;若为False,则运行PCA算法后,原始训练数据的值会改,因为是在原始数据上进行降维计算。

whiten:

类型:bool,缺省时默认为False

意义:白化。

例子:

arr = array([[1,1,1,0,1,0,0,1],
             [0,1,1,0,1,0,0,1],
             [0,1,1,0,1,0,0,1],
             [1,1,0,1,0,0,1,1],
             [0,1,1,0,1,0,0,1],
             [1,0,1,0,0,1,0,1],
             [0,1,1,0,1,0,0,1]])
arr3 = copy(arr)

pca = PCA(n_components=0.9, copy=True, whiten=False)
arr2 = pca.fit_transform(arr)

print arr2

结果

[[-0.05589893 -0.06936121]
 [-0.58413532  0.10595442]
 [-0.58413532  0.10595442]
 [ 1.50720333  0.89629847]
 [-0.58413532  0.10595442]
 [ 0.88523688 -1.25075492]
 [-0.58413532  0.10595442]]

对象属性:

arr2 = pca.fit_transform(arr)#用arr来训练PCA模型,同时返回降维后的数据。

print pca.transform(arr3)#将数据X转换成降维后的数据

print pca.explained_variance_ratio_#各项特征方差百分比

print pca.explained_variance_#各项特征方差

print pca.get_params#返回各参数值

print pca.mean_#原始数据均值

print pca.inverse_transform(arr2)#将降维后的数据转换成原始数据
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值