Mhy, I think that this solution It doesn't work with odd dimension. Suppose we have a reference matrix 13x13 (near i present a table format i.e save by write.table). This matrix name a response2.
"V1" "V2" "V3" "V4" "V5" "V6" "V7" "V8" "V9" "V10" "V11" "V12" "V13" "1" 0 1.4142135623731 1 1.73205080756888 1.4142135623731 1.73205080756888 1 1.73205080756888 1.4142135623731 1 1.73205080756888 1.73205080756888 1 "2" 1.4142135623731 0 1 1 1.4142135623731 1 1.73205080756888 1 1.4142135623731 1.73205080756888 1.73205080756888 1 1.73205080756888 "3" 1 1 0 1.4142135623731 1.73205080756888 1.4142135623731 1.4142135623731 1.4142135623731 1 1.4142135623731 1.4142135623731 1.4142135623731 1.4142135623731 "4" 1.73205080756888 1 1.4142135623731 0 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "5" 1.4142135623731 1.4142135623731 1.73205080756888 1 0 1 1 1 1.4142135623731 1 1.73205080756888 1 1 "6" 1.73205080756888 1 1.4142135623731 0 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "7" 1 1.73205080756888 1.4142135623731 1.4142135623731 1 1.4142135623731 0 1.4142135623731 1 0 1.4142135623731 1.4142135623731 0 "8" 1.73205080756888 1 1.4142135623731 0 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "9" 1.4142135623731 1.4142135623731 1 1 1.4142135623731 1 1 1 0 1 1 1 1 "10" 1 1.73205080756888 1.4142135623731 1.4142135623731 1 1.4142135623731 0 1.4142135623731 1 0 1.4142135623731 1.4142135623731 0 "11" 1.73205080756888 1.73205080756888 1.4142135623731 1.4142135623731 1.73205080756888 1.4142135623731 1.4142135623731 1.4142135623731 1 1.4142135623731 0 1.4142135623731 1.4142135623731 "12" 1.73205080756888 1 1.4142135623731 0 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "13" 1 1.73205080756888 1.4142135623731 1.4142135623731 1 1.4142135623731 0 1.4142135623731 1 0 1.4142135623731 1.4142135623731 0 Suppose we have a next triangular upper matrix response1 "V1" "V2" "V3" "V4" "V5" "V6" "V7" "V8" "V9" "V10" "V11" "V12" "V13" "1" NA 1.4142135623731 1 1.73205080756888 1.4142135623731 1.73205080756888 1 1.73205080756888 1.4142135623731 1 1.73205080756888 1.73205080756888 1 "2" NA NA 1 1 1.4142135623731 1 1.73205080756888 1 1.4142135623731 1.73205080756888 1.73205080756888 1 1.73205080756888 "3" NA NA NA 1.4142135623731 1.73205080756888 1.4142135623731 1.4142135623731 1.4142135623731 1 1.4142135623731 1.4142135623731 1.4142135623731 1.4142135623731 "4" NA NA NA NA 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "5" NA NA NA NA NA 1 1 1 1.4142135623731 1 1.73205080756888 1 1 "6" NA NA NA NA NA NA 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "7" NA NA NA NA NA NA NA 1.4142135623731 1 0 1.4142135623731 1.4142135623731 0 "8" NA NA NA NA NA NA NA NA 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "9" NA NA NA NA NA NA NA NA NA 1 1 1 1 "10" NA NA NA NA NA NA NA NA NA NA 1.4142135623731 1.4142135623731 0 "11" NA NA NA NA NA NA NA NA NA NA NA 1.4142135623731 1.4142135623731 "12" NA NA NA NA NA NA NA NA NA NA NA NA 1.4142135623731 "13" NA NA NA NA NA NA NA NA NA NA NA NA NA Using compare operation response1 == response2 we have obtain a proper comparison i.e [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [1,] NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE [2,] NA NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE [3,] NA NA NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE [4,] NA NA NA NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE [5,] NA NA NA NA NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE [6,] NA NA NA NA NA NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE [7,] NA NA NA NA NA NA NA TRUE TRUE TRUE TRUE TRUE TRUE [8,] NA NA NA NA NA NA NA NA TRUE TRUE TRUE TRUE TRUE [9,] NA NA NA NA NA NA NA NA NA TRUE TRUE TRUE TRUE [10,] NA NA NA NA NA NA NA NA NA NA TRUE TRUE TRUE [11,] NA NA NA NA NA NA NA NA NA NA NA TRUE TRUE [12,] NA NA NA NA NA NA NA NA NA NA NA NA TRUE [13,] NA NA NA NA NA NA NA NA NA NA NA NA NA But when i use this function: response1[lower.tri(response1)] <- response1[upper.tri(response1)] I don't receive a finding symmetric matrix. After using this function matrix response1 look like this: "V1" "V2" "V3" "V4" "V5" "V6" "V7" "V8" "V9" "V10" "V11" "V12" "V13" "1" NA 1.4142135623731 1 1.73205080756888 1.4142135623731 1.73205080756888 1 1.73205080756888 1.4142135623731 1 1.73205080756888 1.73205080756888 1 "2" 1.4142135623731 NA 1 1 1.4142135623731 1 1.73205080756888 1 1.4142135623731 1.73205080756888 1.73205080756888 1 1.73205080756888 "3" 1 1.4142135623731 NA 1.4142135623731 1.73205080756888 1.4142135623731 1.4142135623731 1.4142135623731 1 1.4142135623731 1.4142135623731 1.4142135623731 1.4142135623731 "4" 1 0 1.4142135623731 NA 1 0 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "5" 1.73205080756888 1 0 1 NA 1 1 1 1.4142135623731 1 1.73205080756888 1 1 "6" 1 1 1 1 0 NA 1.4142135623731 0 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "7" 1.4142135623731 1.73205080756888 0 1 1.4142135623731 1.4142135623731 NA 1.4142135623731 1 0 1.4142135623731 1.4142135623731 0 "8" 1.4142135623731 1.4142135623731 1.4142135623731 1 1 1.4142135623731 1.4142135623731 NA 1 1.4142135623731 1.4142135623731 0 1.4142135623731 "9" 1.4142135623731 1.4142135623731 1.4142135623731 1.73205080756888 1.73205080756888 1.4142135623731 0 1 NA 1 1 1 1 "10" 1.73205080756888 1 1.4142135623731 1.4142135623731 1.73205080756888 1 1 1.4142135623731 1.4142135623731 NA 1.4142135623731 1.4142135623731 0 "11" 1 1.4142135623731 1 1.4142135623731 1.4142135623731 1.4142135623731 0 1.4142135623731 1.4142135623731 0 NA 1.4142135623731 1.4142135623731 "12" 1.73205080756888 1.73205080756888 1 1 1.4142135623731 1.73205080756888 1.4142135623731 1 1 1.4142135623731 0 NA 1.4142135623731 "13" 1 1 1.4142135623731 1.4142135623731 1.73205080756888 1 0 1.73205080756888 1.4142135623731 1 1.4142135623731 1.4142135623731 NA And it's not compare to response2 i.e response1 == response2 "V1" "V2" "V3" "V4" "V5" "V6" "V7" "V8" "V9" "V10" "V11" "V12" "V13" "1" NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE "2" TRUE NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE "3" TRUE FALSE NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE "4" FALSE FALSE TRUE NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE "5" FALSE FALSE FALSE TRUE NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE "6" FALSE TRUE FALSE FALSE FALSE NA TRUE TRUE TRUE TRUE TRUE TRUE TRUE "7" FALSE TRUE FALSE FALSE FALSE TRUE NA TRUE TRUE TRUE TRUE TRUE TRUE "8" FALSE FALSE TRUE FALSE TRUE FALSE TRUE NA TRUE TRUE TRUE TRUE TRUE "9" TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE NA TRUE TRUE TRUE TRUE "10" FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE NA TRUE TRUE TRUE "11" FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE FALSE NA TRUE TRUE "12" TRUE FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE TRUE FALSE NA TRUE "13" TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE TRUE TRUE NA Any suggestion? Best Marcin -- View this message in context: http://r.789695.n4.nabble.com/Triangular-matrix-upper-to-down-tp3845107p3845331.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.