2014-01-17 61 views
1

我在跟隨此http://www.pnas.org/content/suppl/2008/12/22/0802806106.DCSupplemental/0802806106SI.pdf實現spectral clustering在我的correlation matrix上。我計算了eigenvalues/vectors,並選擇了k-most(k=5)個有意義的對。由此產生的矩陣看起來像這樣:R將光譜聚類中的特徵向量標準化,然後繪製

V1  V2  V3  V4  V5 
-0.033 -0.099 -0.046 -0.014 -0.013 
-0.010 0.012 0.069 0.087 0.002 
0.010 -0.002 0.114 -0.053 -0.012 
0.0023 0.001 -0.013 -0.006 -0.005 
0.004 0.054 -0.011 0.090 -0.049 

現在我需要"normalize each row to unit length"。我該如何解決這個問題?根據我的理解,我通過將行中每個值的總和的平方根作爲|a|來計算每行的長度,然後將該行中的每個值除以|a|

如果是這樣的話,我發現怎麼那麼我會在網絡上Euclidean Space?5D plot?大多數資源繪製這些5個值與正火做單位長度的處理x,y,z,並且可以在3-D plot繪製。

謝謝。

回答

1

如果你的假設是正確的,你想

df_rn <- df/rowSums(sqrt(df^2)) 
rowSums(df_rn^2) 
[1] 1 1 1 1 1 

所以所有行現在由他們的L2(歐幾里德)長度標準化。

關於在5d製圖中沒有太多可以說的:這是不可能的。通常繪製2d(很少 - 3d)投影。投影機的問題是開放的;這取決於你想表現什麼。

+0

謝謝,我已經採用了不同的繪圖方法,但規範化要求保持不變。 –