Ho una matrice in R che dovrebbe essere simmetrica, tuttavia, a causa della precisione della macchina, la matrice non è mai simmetrica (i valori differiscono di circa 10^-16). Dal momento che so che la matrice è simmetrica che ho fatto questo finora per aggirare il problema:Creazione di una matrice simmetrica in R
s.diag = diag(s)
s[lower.tri(s,diag=T)] = 0
s = s + t(s) + diag(s.diag,S)
Esiste un migliore comando di una riga per questo?
Questo non funziona. '> s = matrice (c (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16), nrow = 4) > s [riga (s)> col (s)] <- s [riga (i) s [, 1] [, 2] [, 3] [, 4] [1,] 1 5 9 13 [2,] 5 6 10 14 [3,] 9 13 11 15 [4,] 10 14 15 16 ' –