Hi, Though the results from Rui, and me are similar, may be it differs in other instances.
My result: dat1<-read.table(text=" a 10 b 9 c 8 d 7 e 6 ",sep="",header=FALSE,stringsAsFactors=FALSE) res1<-apply(toeplitz(dat1[,2]),1,function(x) 10-x) res1[upper.tri(res1)]<- -1*res1[upper.tri(res1)] row.names(res1)<-dat1[,1] colnames(res1)<-dat1[,1] res1 # a b c d e #a 0 -1 -2 -3 -4 #b 1 0 -1 -2 -3 #c 2 1 0 -1 -2 #d 3 2 1 0 -1 #e 4 3 2 1 0 Rui's solution: t(outer(Table1[,1],Table1[,1],"-")) # a b c d e #a 0 -1 -2 -3 -4 #b 1 0 -1 -2 -3 #c 2 1 0 -1 -2 #d 3 2 1 0 -1 #e 4 3 2 1 0 I guess ?expand.grid() might also help you. dat2<-expand.grid(dat1[,2],dat1[,2]) mat1<-matrix(apply(dat2,1,diff),ncol=5) dimnames(mat1)<-dimnames(res1) mat1 # a b c d e #a 0 -1 -2 -3 -4 #b 1 0 -1 -2 -3 #c 2 1 0 -1 -2 #d 3 2 1 0 -1 #e 4 3 2 1 0 A.K. ----- Original Message ----- From: cleberchaves <clebercha...@gmail.com> To: r-help@r-project.org Cc: Sent: Saturday, November 10, 2012 3:55 PM Subject: Re: [R] matrix of all difference between rows values Mmmm... Actually, Rui Barradas is the right! Arun kirshna, yours script has an error. That repeat the same set of numbers in all columns... Anyway, thanks for both! -- View this message in context: http://r.789695.n4.nabble.com/matrix-of-all-difference-between-rows-values-tp4649191p4649207.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. ______________________________________________ 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.