I do not want to merge these data frames. But, wish to pick each pair of Gene1 & Gene2 from 'ptable' and their corresponding other columns from 'table'.
On Sun, Jan 24, 2010 at 8:01 PM, William Dunlap <wdun...@tibco.com> wrote: > Have you tried using merge? E.g., something > like > PCC <- merge(ptable[c("Gene1", "Gene2"),], table, suffices=c("","")) > > By the way, why do you convert the output of > read.table to a matrix? Since you have both > character and numeric data columns I think it > would make more sense to leave the dataset as > a data.frame (which read.table produces). > > Bill Dunlap > Spotfire, TIBCO Software > wdunlap tibco.com > >> -----Original Message----- >> From: r-help-boun...@r-project.org >> [mailto:r-help-boun...@r-project.org] On Behalf Of Amit >> Sent: Sunday, January 24, 2010 10:48 AM >> To: r-help@r-project.org >> Subject: [R] fetching columns from another file >> >> Hi! All, >> >> I am trying to fetch rows from a data frame which matches to first 2 >> columns of another data frame. Here is the example what I am trying to >> do: >> > ptable=read.table(file="All.txt",header=T,sep="\t") >> > ptable=as.matrix(ptable) >> > dim(ptable) >> [1] 9275 6 >> > head(ptable) >> Gene1 Gene2 PCC PCC3 PCC23 >> PCC123 >> [1,] "3813_f_at" "3884_f_at" "0.9956842" "0.9955455" >> "0.9956513" "0.9956171" >> [2,] "3884_f_at" "3813_f_at" "0.9956842" "0.9955455" >> "0.9956513" "0.9956171" >> [3,] "3491_f_at" "3709_f_at" "0.9952116" "0.9951588" >> "0.9951601" "0.9950864" >> [4,] "3709_f_at" "3491_f_at" "0.9952116" "0.9951588" >> "0.9951601" "0.9950864" >> [5,] "3371_f_at" "3594_f_at" "0.9946206" "0.9945342" >> "0.9946246" "0.9946592" >> [6,] "3594_f_at" "3371_f_at" "0.9946206" "0.9945342" >> "0.9946246" "0.9946592" >> > table=read.table(file="All_GPYeast_m.txt",header=T,sep="\t") >> > table=as.matrix(table) >> > dim(table) >> [1] 9275 6 >> > head(table) >> Gene1 Gene2 PCC PCC3 PCC23 >> PCC123 >> [1,] "3491_f_at" "3709_f_at" "0.9953142" "0.9950756" >> "0.9954676" "0.9952902" >> [2,] "3709_f_at" "3491_f_at" "0.9953142" "0.9950756" >> "0.9954676" "0.9952902" >> [3,] "3813_f_at" "3884_f_at" "0.9951781" "0.9953901" >> "0.9959256" "0.9958152" >> [4,] "3884_f_at" "3813_f_at" "0.9951781" "0.9953901" >> "0.9959256" "0.9958152" >> [5,] "3371_f_at" "3594_f_at" "0.9946130" "0.9938905" >> "0.9945572" "0.9945285" >> [6,] "3594_f_at" "3371_f_at" "0.9946130" "0.9938905" >> "0.9945572" "0.9945285" >> >> Now, I wish to pick column 1&2 from 'ptable' and their coresponding >> columns from 'table' and store it in a variable. I did following and >> got error >> > PCC=apply(ptable[,c(1,2)],1,function(x)table[x[1],x[2]]) >> Error in FUN(newX[, i], ...) : subscript out of bounds >> >> I was expecting something like this >> >head(PCC) >> [1,] "3813_f_at" "3884_f_at" "0.9951781" "0.9953901" >> "0.9959256" "0.9958152" >> [2,] "3884_f_at" "3813_f_at" "0.9951781" "0.9953901" >> "0.9959256" "0.9958152" >> --------------------- >> --------------------- >> >> Please, help! >> >> regards >> Amit >> >> ______________________________________________ >> 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.