R语言矩阵特征值分解(谱分解)和奇异值分解(SVD)特征向量分析有价证券数据
最近我们被客户要求撰写关于特征值分解的研究报告,包括一些图形和统计输出。
R语言是一门非常方便的数据分析语言,它内置了许多处理矩阵的方法。
作为数据分析的一部分,我们要在有价证券矩阵的操作上做一些工作,只需几行代码。
有价证券数据矩阵在这里
D=read.table("secur.txt",header=TRUE)
M=marix(D[,2:10])
head(M[,1:5])
谱分解
对角线化和光谱分析之间的联系可以从以下文字中看出
> P=eigen(t(M)%*%M)$vectors
> P%*%diag(eigen(t(M)%*%M)$values)%*%t(P)
首先是这个矩阵的谱分解与奇异值分解之间的联系
> sqrt(eigen(t(M)%*%M)$values)
和其他矩阵乘积的谱分解
> sqrt(eigen(M%*%t(M))$values)
现在,为了更好地理解寻找有价证券的成分,让我们考虑两个变量
> sM=M[,c(1,3)]
> plot(sM)
我们对变量标准化并减少变量(或改变度量)非常感兴趣
> sMcr=sM
> for(j in 1:2) sMcr[,j]=(sMcr[,j]-mean(sMcr[,j]))/sd(sMcr[,j])
> plot(sMcr)
在对轴进行投影之前,先介绍两个函数
> pro_a=funcion(x,u
+ ps=ep(NA,nrow(x))
+ for(i i 1:nrow(x)) ps[i=sm(x[i*u)
+ return(ps)
+ }> prj=function(x,u){
+ px=x
+ for(j in 1:lngh(u)){
+ px[,j]=pd_cal(xu)/srt(s(u^2))u[j]
+ }
+ return(px)
+ }
例如,如果我们在 x 轴上投影,
> point(poj(scr,c(1,0))
然后我们可以寻找轴的方向,这为我们提供具有最大惯性的点
> iner=function(x) sum(x^2)
> Thta=seq(0,3.492,length=01)
> V=unlslly(Theta,functinheta)ietie(roj(sMcrc(co(thet)sinheta)))
> plot(Theta,V,ype='l')
> (ange=optim(0,fun(iothet) -ertieprojsMcrc(s(teta),
si(ta)))$ar)
通过画图,我们得到
> plot(Mcr)
请注意,给出最大惯性的轴与谱分解的特征向量有关(与最大特征值相关的轴)。
>(cos(ngle),sin(ange))
[1] 0.7071 0.7070
> eigen(t(sMcr)%*%sMcr)
在开始主成分分析之前,我们需要操作数据矩阵,进行预测。
R语言矩阵特征值分解(谱分解)和奇异值分解(SVD)特征向量分析有价证券数据相关推荐
- 矩阵分解之: 特征值分解(EVD)、奇异值分解(SVD)、SVD++
目录: 1.矩阵分解 1.1 矩阵分解的产生原因 1.2 矩阵分解作用 1.3 矩阵分解的方法 1.4 推荐学习的经典矩阵分解算法 2. 特征值分解(EVD) 3. 奇异值分解(SVD) 4. SVD ...
- 矩阵分解之特征值分解(EVD)、奇异值分解(SVD)、SVD++
矩阵分解之: 特征值分解(EVD).奇异值分解(SVD).SVD++_人鱼线的博客-CSDN博客_evd分解 矩阵的特征分解和奇异值(SVD)分解--求法和意义_奔跑的Yancy的博客-CSDN博客_ ...
- python 矩阵特征值分解_python3-特征值,特征分解,SVD奇异值分解
1.设A为n阶矩阵,若存在常数λ及n维非零向量x,使得Ax=λx,则称λ是矩阵A的特征值,x是A属于特征值λ的特征向量. A的所有特征值的全体,叫做A的谱,记为λ(A) 2.特征分解(Eigendec ...
- 【Matlab】特征值分解eig和奇异值分解svd
前言:当A是方阵时,使用eig特征值分解和实验svd奇异值分解,有什么异同? (1)特征值分解:函数eig 格式:[V,D] = eig(A) %计算A的特征值对角阵D和特征向量V,使AV= ...
- R语言矩阵新增一列并提前作为第一列
R语言矩阵新增一列并提前作为第一列 R包 library(dplyr) data$Gene_id<-rownames(data)#新增一列并提前作为第一列 data<- data %> ...
- oracle矩阵函数,R语言矩阵matrix函数
矩阵是元素布置成二维矩形布局的R对象. 它们包含相同原子类型的元素.尽管我们可以创建只包含字符或只逻辑值的矩阵,但是它们没有多大用处.我们使用的是在数学计算中含有数字元素矩阵. 使用 matrix() ...
- R语言使用hexbin包的hexbin函数可视化散点图、应对数据量太大、且有数据重叠的情况、普通散点图可视化效果变差的情况、提供了对六边形单元格的二元绑定、通过图例颜色标定每一个区域数据点的数量
R语言使用hexbin包的hexbin函数可视化散点图.应对数据量太大.且有数据重叠的情况.普通散点图可视化效果变差的情况.hexbin函数提供了对六边形单元格的二元绑定.通过图例颜色标定每一个区域数 ...
- R语言使用subset函数基于组合逻辑筛选dataframe符合条件的数据行(select observations)、并指定需要保留的dataframe数据列或者字段
R语言使用subset函数基于组合逻辑筛选dataframe符合条件的数据行(select observations).并指定需要保留的dataframe数据列或者字段 目录
- R语言ggplot2可视化:通过水平半小提琴图和抖动数据点可视化雨云图(Rain Cloud plots)、自定义雨云图中数据点的颜色(数据点的颜色和半小提琴图一致)
R语言ggplot2可视化:通过水平半小提琴图和抖动数据点可视化雨云图(Rain Cloud plots).自定义雨云图中数据点的颜色(数据点的颜色和半小提琴图一致) 目录
最新文章
- bat 将war文件转换成ear文件
- Spring aop面向切面编程概述
- springMVC3.0(文件上传,@RequestMapping加参数,@SessionAttributes,@ModelAttribute,转发,重定向,数值获取,传参,ajax,拦截器)
- adb命令 android 串口_ADB使用linux命令查看Android的使用情况
- jsf 后台参数到页面_JSF:直接从页面将参数传递给JSF操作方法,这是JavaEE 6+的一个不错的功能...
- mcq 队列_MCQ | 基础知识 免费和开源软件| 套装4
- 数据流计算模型及其在大数据处理中的应用
- 《python透明人士,他是凭什么成为主流编程的宠儿?!》Python基础
- 给定一个整数数组,判断是否存在重复元素。
- 英雄联盟更新防沉迷规则:未成年用户节假日每日限玩3小时
- 格式化 SQL 来提高效率
- Net设计模式实例之观察者模式(Observer Pattern)
- windows安全中心打不开defender的完美解决方法,适用于win11更新后进入defender提示需要新应用或者Windows安全中心出错,或者账户更换后出现此问题。
- PC-红警联机问题与下载
- uniapp离线打包
- Centos 图形界面与Dos界面切换
- 修改 ubnt 路由器固件
- 远程计算机或设备将不受连接(能联网QQ能上,但浏览器无法上网)
- 后台管理系统中的登录页面
- 表格找不到任何要替换的数据,不能替换受保护的工作表中的数据。