[R] Data frame and function that requires vector as input

David Winsemius dwinsemius at comcast.net
Wed Mar 23 20:48:18 CET 2011


On Mar 22, 2011, at 3:16 PM, Gian Luca Negri wrote:

>
> Hi,
>
> I have a data.frame(zscores) that looks like this:
>
>      gA     gB
> g1  0.2    0.6
> g2  0.3    Na

I hope it doesn't look likethat because it would mean you had gB as a  
character vector when I think you want that value to be NA.


>
> My problem is that I need to  use a function and the output is a  
> vector of only the non NA values, so shorter than the list I would  
> obtain dropping the data.frame.
> What is the cleanest way to keep row and column names or putting the  
> values back into the same data frame format?

I sometime create a logical vector in the data.frame named gdval for  
"good value"

 > zscores$gdval <- apply(zscores, 1, function(x) all(!is.na(x)) )
 >
 > zscores[ zscores$gdval, -grep("gdval", names(zscores))]
     gA  gB
g1 0.2 0.6      # returns all rows without any NA's without removing  
any data in zscores


>
> The function is fdrtool() and I can compute the values I'm  
> interested like this:
> FDR=fdrtool([!is.na(zscores)])$qval
> But at this point I don't know how to track back these values, to  
> the original data frame
>
> Thanks,
> Gian Luca
>
> ______________________________________________
> R-help at 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.

David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list