首页 > 其他分享 >PCA降维练习

PCA降维练习

时间:2022-11-03 23:14:32浏览次数:47  
标签:val data1 练习 降维 vec eig np PCA data

1.读取数据

import pandas as pd
import openpyxl
import numpy as np
data = pd.read_excel("C:\\Users\\86152\\Desktop\\我国大陆经济发展状况数据.xlsx",header=None,engine='openpyxl')
data = data [2:]
data = data[[1,2,3,4,5,6,7,8]]
data

  

 

 2.去中心化:每个数据减去对应每列的平均值

sample,feature=data.shape
data = data - np.mean(data)
data

 

 

3.计算协方差矩阵:直接调用方法

data1 = np.mat(data)
data1 = data1.astype('float16')

# 计算协方差矩阵
covX = np.cov(data1.T)
covX

  

 

 

4. 求特征值和特征向量:调用方法

eig_val, eig_vec = np.linalg.eig(covX)
eig_pairs = [(np.abs(eig_val[i]), eig_vec[:, i]) for i in range(feature)]
eig_val

 

 

5.特征值排序

index = np.argsort(-eig_val)
# 对特征值从大到小排序,
np.argsort(eig_val)

 

 

6.降维

k = 3
selectVec = np.matrix(eig_vec.T[index[:k]])
finalData = data1 * selectVec.T # (30, 8) * (8, 3) = (30, 3)
finalData.shape
finalData

 

标签:val,data1,练习,降维,vec,eig,np,PCA,data
From: https://www.cnblogs.com/fydd011122/p/16856190.html

相关文章

  • 【Java复健指南09】项目练习全解--房屋出租系统
    一个基于文本界面的综合练习,主要用于串联和回忆知识点,比较简单各个界面的设计样式主菜单=============房屋出租系统菜单============ 1新增房源 2查找房......
  • 数据分享|R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化
    全文链接:http://tecdat.cn/?p=22262在讨论分类时,我们经常分析二维数据(一个自变量,一个因变量)(点击文末“阅读原文”获取完整代码数据)。但在实际生活中,有更多的观察值,更多的......
  • DPM(Deformable Part Model)的PCA+Starcasscade(Windows)代码整理
    大家好,我是你们的老朋友——泽哥!最近一直没有写博客是因为泽哥最近在忙本科毕业设计。泽哥的本科毕业设计是研究DPM模型的,相信大家也略微了解,DPM模型即DeformablePartMode......
  • RHCE角色练习题
    RHCE角色练习题1、使用RHEL系统角色安装RHEL系统角色软件包,并创建符合以下条件的playbook/home/student/ansible/timesync.yml:在所有受管节点上运行使用timesync......
  • PCA降维练习
    作业一:PCA降维练习【题目】1.现有我国大陆30个省、直辖市、自治区的经济发展状况数据集如表所示,包括8项经济指标:国民生产总值(A1);居民消费水平(A2);固定资产投资(A3);职工平均工......
  • PCA降维练习
    1.读取数据importpandasaspdimportopenpyxlimportnumpyasnpdata=pd.read_excel("D:我国大陆经济发展状况数据.xlsx",header=None,engine='openpyxl')data=data......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题:二叉树的最大深度
    题目:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,......
  • javascript - 练习题:浅层克隆和深层克隆
    浅层克隆问:把obj 对象的内容,克隆到ojb1 上去。 varobj={name:'abc',age:123,sex:"female"}varobj1={}分析:这个没有引用值的对象,可以使用浅层克隆......
  • pca
    一、写出PCA完成降维的主要步骤①导入需要的模块和库;②导入数据,探索数据;③画累计方差贡献率,找最佳降维后维度的范围;④降维后维度的学习曲线,继续缩小最佳维度的范围;⑤细化......
  • PCA降维
    一.读取数据源importpandasaspdimportopenpyxlimportnumpyasnpdata=pd.read_excel("D:\HOMEWORK\Project1/我国大陆经济发展状况数据.xlsx",header=None,eng......