天天看點

拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

原文連結:http://tecdat.cn/?p=23973

原文出處:拓端資料部落公衆号

R語言是一門非常友善的資料分析語言,它内置了許多處理矩陣的方法。 

作為資料分析的一部分,我們要在有價證券矩陣的操作上做一些工作,隻需幾行代碼。

有價證券資料矩陣在這裡

  1. D=read.table("secur.txt",header=TRUE)
  2. M=marix(D[,2:10])
  3. head(M[,1:5])
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

譜分解

對角線化和光譜分析之間的聯系可以從以下文字中看出

  1. > P=eigen(t(M)%*%M)$vectors
  2. > P%*%diag(eigen(t(M)%*%M)$values)%*%t(P)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

首先是這個矩陣的譜分解與奇異值分解之間的聯系

  1. > sqrt(eigen(t(M)%*%M)$values)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

和其他矩陣乘積的譜分解

  1. > sqrt(eigen(M%*%t(M))$values)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

現在,為了更好地了解尋找有價證券的成分,讓我們考慮兩個變量 

  1. > sM=M[,c(1,3)]
  2. > plot(sM)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

我們對變量标準化并減少變量(或改變度量)非常感興趣

  1. > sMcr=sM
  2. > for(j in 1:2) sMcr[,j]=(sMcr[,j]-mean(sMcr[,j]))/sd(sMcr[,j])
  3. > plot(sMcr)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

在對軸進行投影之前,先介紹兩個函數

  1. > pro_a=funcion(x,u
  2. + ps=ep(NA,nrow(x))
  3. + for(i i 1:nrow(x)) ps[i=sm(x[i*u)
  4. + return(ps)
  5. + }
  6. > prj=function(x,u){
  7. + px=x
  8. + for(j in 1:lngh(u)){
  9. + px[,j]=pd_cal(xu)/srt(s(u^2))u[j]
  10. + return(px)

例如,如果我們在 x 軸上投影,

  1. > point(poj(scr,c(1,0))
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

然後我們可以尋找軸的方向,這為我們提供具有最大慣性的點

  1. > iner=function(x) sum(x^2)
  2. > Thta=seq(0,3.492,length=01)
  3. > V=unlslly(Theta,functinheta)ietie(roj(sMcrc(co(thet)sinheta)))
  4. > plot(Theta,V,ype='l')
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973
  1. > (ange=optim(0,fun(iothet) -ertieprojsMcrc(s(teta),
  2. si(ta)))$ar)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

通過畫圖,我們得到

  1. > plot(Mcr)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

請注意,給出最大慣性的軸與譜分解的特征向量有關(與最大特征值相關的軸)。

  1. >(cos(ngle),sin(ange))
  2. [1] 0.7071 0.7070
  3. > eigen(t(sMcr)%*%sMcr)
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

在開始主成分分析之前,我們需要操作資料矩陣,進行預測。

拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973
拓端tecdat|R語言矩陣特征值分解(譜分解)和奇異值分解(SVD)特征向量分析有價證券資料 原文連結:http://tecdat.cn/?p=23973

最受歡迎的見解

1.matlab偏最小二乘回歸(PLSR)和主成分回歸(PCR)

2.R語言高維資料的主成分pca、 t-SNE算法降維與可視化分析

3.主成分分析(PCA)基本原理及分析執行個體

4.基于R語言實作LASSO回歸分析

5.使用LASSO回歸預測股票收益資料分析

6.r語言中對lasso回歸,ridge嶺回歸和elastic-net模型

7.r語言中的偏最小二乘回歸pls-da資料分析

8.r語言中的偏最小二乘pls回歸算法

9.R語言線性判别分析(LDA),二次判别分析(QDA)和正則判别分析(RDA)

▍關注我們

【大資料部落】第三方資料服務提供商,提供全面的統計分析與資料挖掘咨詢服務,為客戶定制個性化的資料解決方案與行業報告等。

▍咨詢連結:http://y0.cn/teradat

▍聯系郵箱:[email protected]