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

PCA降维练习

时间:2022-11-03 19:34:41浏览次数:59  
标签:val data1 练习 降维 vec eig np PCA data

1.读取数据

import pandas as pd
import openpyxl
import numpy as np
data = pd.read_excel("D:我国大陆经济发展状况数据.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

 

 5.求特征值和特征向量

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

 

 

6.排序

index = np.argsort(-eig_val)
np.argsort(eig_val)

 

 

7.降维

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/1759945451qq/p/16855585.html

相关文章

  • #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......
  • ansible练习八
    1、使用动态清单模板,修改其内容,要求如下:(1)node1是test主机组的成员,其中test主机组可以使用变量:aa=11bb=22(2)node2和node3是prod主机组的成员,其中prod主机组可以使用......
  • 【THM】Net Sec Challenge-练习
    本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/netsecchallenge使用此挑战来测试你的技能掌握程度,此挑战中的所有问题都可以仅使用nmap、telnet和hydra来解......
  • javascript - 练习题(若干)
    慢慢收集一些习题、考题练习1问:X,Y,Z分别是多少?varx=1,y=z=0;functionadd(n){returnn=n+1;}y=add(x);functionadd(n){returnn=n+3;}z=add(x);conso......
  • 最适合练习英语听力的15个网站
    最适合练习英语听力的15个网站:https://www.jianshu.com/p/303c5132a11501最好的英文听力网站:BBCLearningEnglish网址:http://www.bbc.co.uk/learningenglish/02在线英......
  • ansible练习七
    生成主机文件将一个初始模板文件从http://materials/hosts.j2下载到/home/greg/ansible完成该模板,以便用它生成以下文件:针对每个清单主机包含一行内容,其格式与/etc/......
  • UI动画练习 - CABasicAnimation:视图绕X/Y轴旋转(3D效果)
    视图3D旋转1-代码示例:以绕X轴旋转为例1#import"ViewController.h"2@interfaceViewController()3@property(strong,nonatomic)UIImageView*logoIV;4......