mat
次のようなマトリックスがあります。
A B C D E F
1 0.74 1.19 0.01 1.21 16000 0.02
2 0.76 1.17 0.01 1.21 15500 0.02
3 0.79 1.16 0.01 1.17 15625 0.02
4 0.75 1.17 0.01 1.17 15600 0.02
5 0.80 1.19 0.01 1.19 15225 0.02
6 0.79 1.18 0.01 1.18 15625 0.02
そして、関数 を適用して、これから対称行列を作成したいと思いますSum(Col1-Col2)
。最終結果は次のようになります。
A B C D E F
A 0
B 0
C 0
D 0
E 0
F 0
空白が差の合計を表すように。すなわち[1,2] = Sum(A-B)
。
次のような方法を調査しました。
combs<-combn(names(mat),2)
val<-apply(combs,2,function(x) mat[[x[1]]]-mat[[x[2]]])
しかし、それは私に良い対称行列を与えません。
誰にもアイデアはありますか?
ありがとう。
編集 - トロイのおかげで上記の作品。Sum((Col1-Col2)^2)
しかし、その中で計算したい場合はどうですか(したがって、最初にSum(((A_1,A_2,..,A_n)-(B_1,B_2,..,B_n))^2)
合計してから減算することはできません。そうしないと、答えがオフになります)。A
B