c 求輸入的矩陣的協方差矩陣

2021-10-06 12:19:35 字數 1479 閱讀 2695

參考知識點:

1、這個說的非常詳細:協方差矩陣計算方法

( 推薦手動求解他的例子)

#include

#include

#include

using

namespace std;

intmain()

//均值向量

vector<

double

>

e(n)

;for

(int j =

0; j < n;

++j)

e[j]

= sum / m;

}//樣本中心化矩陣

vector

double

>>

centermatrix

(m, vector<

double

>

(n))

; vector

double

>>

centermatrixt

(n, vector<

double

>

(m))

;for

(int i =

0; i < m; i++

)for

(int j =

0; j < n; j++

)//協方差矩陣:covmatrix = 1 / (m-1) * matrixt * matrix

vector

double

>>

covmatrix

(n, vector<

double

>

(n))

;for

(int i =

0; i < n;

++i)

for(

int j =

0; j < n;

++j)

for(

int k =

0; k < m;

++k)

covmatrix[i]

[j]+

= centermatrixt[i]

[k]* centermatrix[k]

[j];

cout << endl <<

"協方差矩陣為:"

<< endl;

for(

int i =

0; i < n;

++i)

return0;

}

以下資料為10行20列

輸出:

1、你自己可以自定義輸入矩陣的大小:在 inputdata.txt 檔案下修改資料並在執行時在控制台正確輸入矩陣的行、列數。

協方差 協方差矩陣

期望 離散型隨機變數的一切可能的取值xi與對應的概率pi xi 之積的和稱為該離散型隨機變數的數學期望 設級數絕對收斂 記為 e x 隨機變數最基本的數學特徵之一。它反映隨機變數平均取值的大小。又稱期望或均值。求法 設離散型隨機變數x的取值為 方差 方差是各個資料與平均數之差的平方的平均數。在概率論...

協方差矩陣

這個人的文章很有借鑑意義,記錄以下位址。在做人臉識別的時候經常與協方差矩陣打交道,但一直也只是知道其形式,而對其意義卻比較模糊,現在我根據單變數的協方差給出協方差矩陣的詳細推導以及在不同應用背景下的不同形式。變數說明 設其中 單隨機變數間的協方差 隨機變數 根據已知的樣本值可以得到協方差的估計值如下...

協方差矩陣

在分析多變數資料,e.g x x1,x2,x3 這是乙個三維資料,可以想象x1,x2,x3分別代表某物體的長寬高。在某次實驗環境下,我們測得幾組物體的長寬高的資料,x1 1,2,3 x2 1.5,1.9,2.8 x3 0.9,2.1,3.2 此時分析平均值向量和協方差矩陣,可以幫助我們分析三個變數 ...