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.

Reply via email to