矩陣的協方差矩陣是對稱陣,用公式cov(x, y) = e[x * y] - e[x] e[y] 計算,其中e[x]和e[y]是列的平局值,e[x*y]是樣本方差,可以用變換成gramian矩陣減去e[x] e[y] 後除以n-1,這樣cov(x, y) = e[x * y] - e[x] e[y] 變換為 g[x*y] /(m-1) - (m/m-1)e[x] e[y].gramian矩陣就是協方差的和。
這個邏輯就是spark rowmatrix求協方差的邏輯,只不過運算的是rdd
**如下
public class covariancetest
, new double, new double
};double value = calecovariance( test );
system.out.println( "done" );
}private static double calecovariance( double dss )
}return retvalue;
}/**
* 計算每列的平均值
* * @param dss
* @return
*/private static double calemean( double dss )
}for ( int i = 0; i < len; i++ )
return retvalue;
}/**
* 計算格拉姆矩陣矩陣
* * @param dss
* @return
*/private static double calegramian( double dss )}}
for ( int i = 0; i < count; i++ )}}
return retvalue;}}
協方差矩陣計算
cov x,y exy ex ey 協方差的定義,ex為隨機變數x的數學期望,同理,exy是xy的數學期望 舉例 xi 1.1 1.9 3 yi 5.0 10.4 14.6 e x 1.1 1.9 3 3 2 e y 5.0 10.4 14.6 3 10 e xy 1.1 5.0 1.9 10.4 ...
詳解協方差與協方差矩陣計算
協方差的定義 對於一般的分布,直接代入e x 之類的就可以計算出來了,但真給你乙個具體數值的分布,要計算協方差矩陣,根據這個公式來計算,還真不容易反應過來。網上值得參考的資料也不多,這裡用乙個例子說明協方差矩陣是怎麼計算出來的吧。記住,x y 是乙個列向量,它表示了每種情況下每個樣本可能出現的數。比...
協方差 協方差矩陣
期望 離散型隨機變數的一切可能的取值xi與對應的概率pi xi 之積的和稱為該離散型隨機變數的數學期望 設級數絕對收斂 記為 e x 隨機變數最基本的數學特徵之一。它反映隨機變數平均取值的大小。又稱期望或均值。求法 設離散型隨機變數x的取值為 方差 方差是各個資料與平均數之差的平方的平均數。在概率論...