Re: [R] Problem indexing a factor variable

2011-09-21 Thread R. Michael Weylandt
Your problem is a fairly common one and it has to do with how factors are
stored internally in R. They look like "geneA","geneB", etc to you, but to R
(for many things) they are kept as integers 1,2,3.

It should suffice to set

x <- as.character(tp[1,])

which forces x to be the string "geneA" and you can then put that into
gexp_1[,x]

More generally, you can probably do something like

gexp_1[,as.character(tp)]

to just get the columns of interest directly.

Hope this helps,

Michael Weylandt

On Wed, Sep 21, 2011 at 4:00 PM, Ahmed, Rizwan
wrote:

> Hi,
>
> I have a dataframe "gexp_1" with 115 rows of samples and 27000 columns of
> gene expression measurements with each column corresponding to one gene. I
> now have a smaller vector of genes "tp" for which I need to pull out the
> data form the data frame.
>
> #  first gene from the list with 16 genes
>
> x <- tp[1,]
> x
> [1] geneA
> 16 Levels: geneA, geneB...
>
> #unsuccessful
> gexp_1$x
> NULL
>
> #or
> gexp_1$x[1]
> NULL
>
> #but this works
> gexp_1$geneA
>
> I am sure that this is a fundamental error on my part since I am new to R,
> I would appreciate any advice. I am trying to construct a for loop to
> analyze data for sets of genes at a time but stuck at this step.
>
> Regards
> Rizwan
> __
> 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.
>

[[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.


[R] Problem indexing a factor variable

2011-09-21 Thread Ahmed, Rizwan
Hi,

I have a dataframe "gexp_1" with 115 rows of samples and 27000 columns of gene 
expression measurements with each column corresponding to one gene. I now have 
a smaller vector of genes "tp" for which I need to pull out the data form the 
data frame.

#  first gene from the list with 16 genes

x <- tp[1,]
x
[1] geneA
16 Levels: geneA, geneB...

#unsuccessful
gexp_1$x
NULL

#or
gexp_1$x[1]
NULL

#but this works
gexp_1$geneA 

I am sure that this is a fundamental error on my part since I am new to R, I 
would appreciate any advice. I am trying to construct a for loop to analyze 
data for sets of genes at a time but stuck at this step.

Regards
Rizwan
__
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.