Is this what you want: > x <- read.table(text = " X1 X7 X12 X15 X22 X26 X31 X34 X39 X44 X51 + X1 1 2 3 4 5 6 7 8 9 10 11 + X7 11 9 7 5 3 1 10 8 6 4 2 + X12 3 4 7 8 5 7 2 9 1 3 2 + X15 9 9 8 4 7 1 1 3 2 5 3 + X22 6 7 7 4 4 2 9 8 8 1 1 + X26 3 9 4 8 5 7 6 1 2 3 8 + X31 1 2 1 3 1 4 1 5 1 6 1 + X34 6 7 8 5 2 9 5 1 6 8 9 + X39 4 8 7 4 6 5 1 9 2 7 5 + X44 2 2 2 8 6 7 9 5 3 7 7 + X51 9 9 9 6 6 4 8 7 2 1 3", header = TRUE) > > indx <- c("X1", "X12", "X22", "X31") > x[indx, indx] X1 X12 X22 X31 X1 1 3 5 7 X12 3 7 5 2 X22 6 7 4 9 X31 1 1 1 1
On Sun, Jul 15, 2012 at 3:43 PM, A J <anxu...@hotmail.com> wrote: > Sorry so much for mistakes. > > > It was an example code and I commited some mistakes typing it. But meaning > the original code is right (I have checked several times) I am not sure > about how to solve the problem of extracting columns and rows using labels > from a squared matrix. I have enclosed a text file with the idea in order to > understand it better. > > > Thanks again, and sorry for the inconvenience. > > > Best, > > > AJ > > > >> Date: Sun, 15 Jul 2012 14:53:47 -0400 >> Subject: Re: [R] extracting rows and columns from a big matrix >> From: jholt...@gmail.com >> To: anxu...@hotmail.com >> CC: r-help@r-project.org >> >> For a start, you are missing a quote and a parenthese on the >> statement; probably should be: (another quote was also missing) >> >> n<-subset(m, select=c("X1", "X7", "X12","X15", "X22", "X26", "X31", >> "X34", "X39", "X44", "X51", "X58")) >> >> Not sure what you want with the rownames; an example would help and >> post with 'dput'. >> >> On Sun, Jul 15, 2012 at 2:47 PM, A J <anxu...@hotmail.com> wrote: >> > >> > Hi there and thanks in advance. >> > >> > I have a large symmetrical matrix stored in a text file. After load in R >> > I would like to extract the same number of columns and rows (symmetrical >> > submatrix) using their labels. >> > >> > I have tried this code in order to extract columns, but R console gives >> > me the "+" sign at the end of the code, pointing out incomplete command, so >> > it is not working: >> > >> > m<-read.table("C:/backup/symmetrical.csv") >> > >> > n<-subset(m, select=c("X1", "X7", "X12", X15", "X22", "X26", "X31", >> > "X34", "X39", "X44", "x51", "X58) >> > >> > Therefore, I have no tried with row names yet. >> > >> > Any suggestions? Sorry for the inconvenience. I have read some >> > information about this but always have the same problem with "+" and I do >> > not have any idea to follow. >> > >> > Best, >> > >> > AJ >> > >> > >> > >> > >> > [[alternative HTML version deleted]] >> > >> > ______________________________________________ >> > 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. >> >> >> >> -- >> Jim Holtman >> Data Munger Guru >> >> What is the problem that you are trying to solve? >> Tell me what you want to do, not how you want to do it. -- Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it. ______________________________________________ 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.