Hi all,

I'm having a problem once again, trying to do something very simple. Consider 
the following data frame:

x <- read.table(textConnection("locus1 locus2 locus3
A T C
A T NA
T C C
A T G"), header = TRUE)
closeAllConnections()

I am trying to make a new data frame, replacing "A" with "A/A", "T" with "T/T", 
"G" with "G/G", and "C" with "C/C." Note also the presence of an "NA" (missing 
data) in the data frame, which should be carried over to the new data frame.

Here is what I am trying, which fails miserably:

x2 <- data.frame(matrix(nrow = nrow(x), ncol = ncol(x)))

for (i in 1:nrow(x)){
    for (j in 1:ncol(x)){
        if(x[i, j] == 'A') {x2[i, j] <- 'A/A'} else{
            if(x[i, j] == 'T') {x2[i, j] <- 'T/T'} else{
                 if(x[i, j] == 'G') {x2[i, j] <- 'G/G'} else{
                    if(x[i, j] == 'G') {x2[i, j] <- 'G/G'} else{x2[i, j] <- NA}
                }
           }
       }
    }
}

I get the following error message:
Error in if (x[i, j] == "A") { : missing value where TRUE/FALSE needed

So what am I doing wrong? If you can provide me with specific code that fixes 
the problem and gets the job done, that would be the most useful. 


Thanks very much in advance for your help!

Sincerely,
-----------------------------------
Josh Banta, Ph.D
Center for Genomics and Systems Biology
New York University
100 Washington Square East
New York, NY 10003
Tel: (212) 998-8465
http://plantevolutionaryecology.org


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

Reply via email to