error de traducción (recodificación) en r
Aquí hay un pequeño ejemplo:
<code>X1 <- c("AC", "AC", "AC", "CA", "TA", "AT", "CC", "CC") X2 <- c("AC", "AC", "AC", "CA", "AT", "CA", "AC", "TC") X3 <- c("AC", "AC", "AC", "AC", "AA", "AT", "CC", "CA") mydf1 <- data.frame(X1, X2, X3) </code>
Marco de datos de entrada
<code> X1 X2 X3 1 AC AC AC 2 AC AC AC 3 AC AC AC 4 CA CA AC 5 TA AT AA 6 AT CA AT 7 CC AC CC 8 CC TC CA </code>
La función
<code># Function atgc <- function(x) { xlate <- c( "AA" = 11, "AC" = 12, "AG" = 13, "AT" = 14, "CA"= 12, "CC" = 22, "CG"= 23,"CT"= 24, "GA" = 13, "GC" = 23, "GG"= 33,"GT"= 34, "TA"= 14, "TC" = 24, "TG"= 34,"TT"=44, "ID"= 56, "DI"= 56, "DD"= 55, "II"= 66 ) x = xlate[x] } outdataframe <- sapply (mydf1, atgc) outdataframe X1 X2 X3 AA 11 11 12 AA 11 11 12 AA 11 11 12 AG 13 13 12 CA 12 12 11 AC 12 13 13 AT 14 11 12 AT 14 14 14 </code>
Problema, AC no es igual a 12 en salida en lugar de 11, de manera similar para otros. ¡Solo lío!
(Exta: También no sé cómo deshacerme de los nombres conocidos).