Skip to content
Prev 318414 / 398503 Next

matrix multiplication

Hi,

Just to add:
res<-do.call(cbind,lapply(seq_len(nrow(mat1)),function(i) {new1<-do.call(rbind,lapply(seq_len(nrow(mat1[-i,])),function(j) {x1<-rbind(mat1[i,],mat1[j,]); x2<-(abs(x1[1,1]-x1[2,1])*abs(x1[1,5]-x1[2,5]))+(abs(x1[1,2]-x1[2,2])*abs(x1[1,6]-x1[2,6]))+(abs(x1[1,3]-x1[2,3])*abs(x1[1,7]-x1[2,7]))+(abs(x1[1,4]-x1[2,4])*abs(x1[1,8]-x1[2,8]))}));new1}))

res3<-rbind(res,c(res[,124],0))

#If I do this on a smaller dataset:
?mat2<-head(mat1)
?mat2
#???? [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
#[1,]? 428? 401?? 63? 436? 132? 400? 403? 164
#[2,]? 359? 476? 424? 469? 343?? 78? 296?? 91
#[3,]? 353? 262? 496? 186? 447? 273? 268? 351
#[4,]? 498? 159? 126? 472? 457? 411? 489? 443
#[5,]? 169? 195? 334? 297? 428? 401?? 63? 436
#[6,]?? 46? 102? 183?? 50? 359? 476? 424? 469

res2<-do.call(cbind,lapply(seq_len(nrow(mat2)),function(i) {new1<-do.call(rbind,lapply(seq_len(nrow(mat2[-i,])),function(j) {x1<-rbind(mat2[i,],mat2[j,]); x2<-(abs(x1[1,1]-x1[2,1])*abs(x1[1,5]-x1[2,5]))+(abs(x1[1,2]-x1[2,2])*abs(x1[1,6]-x1[2,6]))+(abs(x1[1,3]-x1[2,3])*abs(x1[1,7]-x1[2,7]))+(abs(x1[1,4]-x1[2,4])*abs(x1[1,8]-x1[2,8]))}));new1}))
?resTrial<-rbind(res2,c(res2[,6],0))
resTrial
#?????? [,1]?? [,2]?? [,3]?? [,4]?? [,5]?? [,6]
#[1,]????? 0? 79745 146483? 40874 206818 229688
#[2,]? 79745????? 0 117950 179977 187223 343090
#[3,] 146483 117950????? 0 123746? 54717 124372
#[4,]? 40874 179977 123746????? 0? 99734? 62678
#[5,] 206818 187223? 54717? 99734????? 0? 78124
#[6,] 229688 343090 124372? 62678? 78124????? 0


A.K.