主成分分析降维(用Python中的PCA模块实现)

 之前本人写过一篇用Python实现主成分降维的文章,现在想想感觉方法很麻烦,因为Python的PCA模块可以很容易的完成数据降维。下面附上代码

# 主成分分析
# coding=utf-8
import pandas as pd
# import numpy as np
from sklearn.decomposition import PCA
# from sklearn.preprocessing import StandardScaler
data = pd.read_excel("data.xls") # 数据的读入
data1 = data.iloc[:, 3:6]
# 主成分分析进行中
pca1 = PCA()
pca1.fit(data1)
# 返回模型中的各个特征量
characteristic = pca1.components_
print(characteristic)
# 返回各个成分中各自方差百分比,贡献率
rate = pca1.explained_variance_ratio_
print(rate)
pca2 = PCA(2)
pca2.fit(data1)
reduction = pca2.transform(data1)  # 降维
reduction_rate = pca2.explained_variance_ratio_  # 降维后各个成分的方差百分比,贡献率
reduction_characteristic = pca2.components_  # 降维后的特征向量
print(reduction_rate)
print(reduction_characteristic)
# 将降维后的数据转换成原始数据
recovery = pca2.inverse_transform(reduction)
print(recovery)

 

你可能感兴趣的:(算法,python)