Hola, 
Perdonar por saltarme algun paso, pero a veces no me doy cuenta que yo lo tengo
muy claro porque soy el que tiene el problemay no termino de explicarlo del todo
jeje.
Ahora he adjuntado los pasos necesarios en excel para obtener el resultado que
quiero , serian 5 pasos: Quizas en R haya otra manera mas rapida.
1) Cargar las dos bases de datos (base de datos ver y base de datos azul)2)
Hacer un cbind en R3) Eliminar las celdas centrales con NA y correr los
registros hacia la izquierda. Los ultimos valores los he puesto en rojo ya que
son NAs nuevos que quedan por el desplazamiento de las celdasEsto es facil en
excel pero no se hacerlo en R4) Eliminar las columnas con todos sus registros
como NA5) Renombrar los fates desde el 1 hasta la columna que tenga valor
Lo que se me resiste es el paso 3. Sabes como hacer ese eliminacion de celdas en
R, u otro manera de hacer el join de esta informacion?
Muchas gracias, Saludos,Ruben
Date: Mon, 29 Feb 2016 23:20:25 +0100
Subject: Re: [R-es] Juntar dos data.frames eliminando celdas con NA
From: cof en qualityexcellence.es
To: ruben_bm en hotmail.com
CC: r-help-es en r-project.org
Hola,
Del ejemplo que has puesto, no entiendo cómo generas el "Fate_3" y el
"Fate_4" tras hacer ese ejercicio de poner los fates en columnas
consecutivas.
Adjunto cómo se dispone el ejemplo que comentas en Excel y claro no has indicado
en el ejemplo ningún Fate_3 que permita obtener un Fate_3 <- c(0,0,0,NA) a
partir del único que tienes Fate_3 <- c(0,NA,NA,NA).
Gracias,Carlos.
El 29 de febrero de 2016, 12:36, Ruben Bermad <ruben_bm en hotmail.com>
escribió:
Hola a todos,
Quisiera juntar las informacion de dos data.frames con una union de columnas un
tanto especial. La informacion que tengo son datos de captura-recaptura de
diferentes individuos, por ejemplo en una base de datos tengo:ID <-
c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <- c(0,0,0,NA)Fate_3 <- c(0, NA,
NA, NA)
y en otra base de datos tengo:ID <- c(1,2,3)Fate_1 <- c(0, 0, 0, NA)Fate_2
<- c(NA, 0, NA, NA)
Como podeis ver no todos los fates de todos los individuos  tienen algun valor,
y lo que gustaria es juntarlo sin the haya NAs entre diferentes Fates para cada
fila, que es lo que me sucederia si hiciera un cbind entre los dos data.frames.
Lo que se me habia ocurrido era hacer un cbind, que quedaria un resultado como
este:ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <- c(0,0,0,NA)Fate_3
<- c(0, NA, NA, NA)Fate_1.Y <- c(0, 0, 0, NA)Fate_2.Y <- c(NA, 0, NA,
NA)
y despues ir fila por fila haciendo algo similar a lo que seria en excel de
eliminar unas celdas y desplazar hacia la izquierda. Quedando las ultimas filas
como NA, y estando toda la informacion de los Fates seguida, con el siguiente
resultado:
ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <- c(0,0,0,NA)Fate_3 <-
c(0, 0, 0, NA)Fate_4 <- c(0, 0, NA, NA)
Alguien sabe como podria hacer esta eliminacion de celdas y desplazamiento hacia
la izquierda de manera automatica, u otra manera mejor para juntar esta
informacion?
Muchas gracias por adelantado, Un cordial saludo,Ruben
        [[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
R-help-es en r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es
 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: 1 DATASETS.PNG
Type: image/png
Size: 5710 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0005.png>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: 2 CBIND.PNG
Type: image/png
Size: 4053 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0006.png>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: 3 ELIMINAR CELDAS CENTRALES CON NA.PNG
Type: image/png
Size: 4393 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0007.png>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: 4 ELIMINAR LA S COLUMNAS CON TODOS SUS REGISTROS COMO NA.PNG
Type: image/png
Size: 3337 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0008.png>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: 5) RENOMBRAR LOS FATES.PNG
Type: image/png
Size: 2977 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20160301/9166ebee/attachment-0009.png>
Buenas Ruben,
Para el paso 3, lo que necesitas es mover los NAs al final (a la derecha).
#funcion push_nas: mueve los NA's al final del vector/fila (a la derecha)
push_nas <- function(vector){
   nas.bool <- is.na(vector)
   c(vector[which(!nas.bool)], vector[which(nas.bool)])
}
#aplicas la función push_nas a cada fila; suponiendo que tu tabla del 
paso 2 se llama fates
data.frame(t(apply(fates, 1, push_nas)))
Espero que esto te sirva, no se me ocurre ninguna función automática.
Un saludo,
Luisfo
On 03/01/2016 10:50 AM, Ruben Bermad wrote:> Hola,
>
> Perdonar por saltarme algun paso, pero a veces no me doy cuenta que yo 
> lo tengo muy claro porque soy el que tiene el problemay no termino de 
> explicarlo del todo jeje.
>
> Ahora he adjuntado los pasos necesarios en excel para obtener el 
> resultado que quiero , serian 5 pasos:
> Quizas en R haya otra manera mas rapida.
>
> 1) Cargar las dos bases de datos (base de datos ver y base de datos azul)
> 2) Hacer un cbind en R
> 3) Eliminar las celdas centrales con NA y correr los registros hacia 
> la izquierda. Los ultimos valores los he puesto en rojo ya que son NAs 
> nuevos que quedan por el desplazamiento de las celdas
> Esto es facil en excel pero no se hacerlo en R
> 4) Eliminar las columnas con todos sus registros como NA
> 5) Renombrar los fates desde el 1 hasta la columna que tenga valor
>
> Lo que se me resiste es el paso 3. Sabes como hacer ese eliminacion de 
> celdas en R, u otro manera de hacer el join de esta informacion?
>
> Muchas gracias,
> Saludos,
> Ruben
>
> ------------------------------------------------------------------------
> Date: Mon, 29 Feb 2016 23:20:25 +0100
> Subject: Re: [R-es] Juntar dos data.frames eliminando celdas con NA
> From: cof en qualityexcellence.es
> To: ruben_bm en hotmail.com
> CC: r-help-es en r-project.org
>
> Hola,
>
> Del ejemplo que has puesto, no entiendo cómo generas el "Fate_3"
y el
> "Fate_4" tras hacer ese ejercicio de poner los fates en columnas 
> consecutivas.
>
> Adjunto cómo se dispone el ejemplo que comentas en Excel y claro no 
> has indicado en el ejemplo ningún Fate_3 que permita obtener un Fate_3 
> <- c(0,0,0,NA) a partir del único que tienes Fate_3 <- c(0,NA,NA,NA).
>
> Gracias,
> Carlos.
>
> El 29 de febrero de 2016, 12:36, Ruben Bermad <ruben_bm en hotmail.com 
> <mailto:ruben_bm en hotmail.com>> escribió:
>
>     Hola a todos,
>     Quisiera juntar las informacion de dos data.frames con una union
>     de columnas un tanto especial. La informacion que tengo son datos
>     de captura-recaptura de diferentes individuos, por ejemplo en una
>     base de datos tengo:ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2
<-
>     c(0,0,0,NA)Fate_3 <- c(0, NA, NA, NA)
>     y en otra base de datos tengo:ID <- c(1,2,3)Fate_1 <- c(0, 0, 0,
>     NA)Fate_2 <- c(NA, 0, NA, NA)
>     Como podeis ver no todos los fates de todos los individuos  tienen
>     algun valor, y lo que gustaria es juntarlo sin the haya NAs entre
>     diferentes Fates para cada fila, que es lo que me sucederia si
>     hiciera un cbind entre los dos data.frames.
>     Lo que se me habia ocurrido era hacer un cbind, que quedaria un
>     resultado como este:ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2
<-
>     c(0,0,0,NA)Fate_3 <- c(0, NA, NA, NA)Fate_1.Y <- c(0, 0, 0,
>     NA)Fate_2.Y <- c(NA, 0, NA, NA)
>     y despues ir fila por fila haciendo algo similar a lo que seria en
>     excel de eliminar unas celdas y desplazar hacia la izquierda.
>     Quedando las ultimas filas como NA, y estando toda la informacion
>     de los Fates seguida, con el siguiente resultado:
>     ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <-
c(0,0,0,NA)Fate_3 <-
>     c(0, 0, 0, NA)Fate_4 <- c(0, 0, NA, NA)
>     Alguien sabe como podria hacer esta eliminacion de celdas y
>     desplazamiento hacia la izquierda de manera automatica, u otra
>     manera mejor para juntar esta informacion?
>     Muchas gracias por adelantado, Un cordial saludo,Ruben
>             [[alternative HTML version deleted]]
>
>     _______________________________________________
>     R-help-es mailing list
>     R-help-es en r-project.org <mailto:R-help-es en r-project.org>
>     https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
>
>
> -- 
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es <http://www.qualityexcellence.es>
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
	[[alternative HTML version deleted]]
Es perfectoMuchas gracias Luisfo!
Subject: Re: [R-es] Juntar dos data.frames eliminando celdas con NA
To: ruben_bm en hotmail.com; cof en qualityexcellence.es
CC: r-help-es en r-project.org
From: luisfo89 en yahoo.es
Date: Tue, 1 Mar 2016 11:07:12 +0100
  
    
  
  
    Buenas Ruben,
    
    Para el paso 3, lo que necesitas es mover los NAs al final (a la
    derecha).
    
    #funcion push_nas: mueve los NA's al final del vector/fila (a la
    derecha)
    push_nas <- function(vector){
      nas.bool <- is.na(vector)
      c(vector[which(!nas.bool)], vector[which(nas.bool)])
    }
    
    #aplicas la función push_nas a cada fila; suponiendo que tu tabla
    del paso 2 se llama fates
    data.frame(t(apply(fates, 1, push_nas)))
    
    Espero que esto te sirva, no se me ocurre ninguna función
    automática.
    
    Un saludo,
    Luisfo
    
    
    On 03/01/2016 10:50 AM, Ruben Bermad
      wrote:
    
    
      
      Hola, 
        
        
        Perdonar por saltarme algun
            paso, pero a veces no me doy cuenta que yo lo tengo muy
            claro porque soy el que tiene el problemay no termino de
            explicarlo del todo jeje.
        
          
        Ahora he adjuntado los pasos
            necesarios en excel para obtener el resultado que quiero ,
            serian 5 pasos: 
        Quizas en R haya otra manera
            mas rapida.
        
          
        1) Cargar las dos bases de datos (base de datos ver y base
          de datos azul)
        2) Hacer un cbind en R
        3) Eliminar las celdas centrales con NA y correr los
          registros hacia la izquierda. Los ultimos valores los he
          puesto en rojo ya que son NAs nuevos que quedan por el
          desplazamiento de las celdas
        Esto es facil en excel pero no se hacerlo en R
        4) Eliminar las columnas con todos sus registros como NA
        5) Renombrar los fates desde el 1 hasta la columna que
          tenga valor
        
        
        Lo que se me resiste es el paso 3. Sabes como hacer ese
          eliminacion de celdas en R, u otro manera de hacer el join de
          esta informacion?
        
        
        Muchas gracias, 
        Saludos,
        Ruben
        
        
        
          
            Date: Mon, 29 Feb 2016 23:20:25 +0100
            Subject: Re: [R-es] Juntar dos data.frames eliminando celdas
            con NA
            From: cof en qualityexcellence.es
            To: ruben_bm en hotmail.com
            CC: r-help-es en r-project.org
            
            
              Hola,
              
              
              Del ejemplo que
                has puesto, no entiendo cómo generas el "Fate_3" y el
                "Fate_4" tras hacer ese ejercicio de poner los fates
en
                columnas consecutivas.
              
              
              Adjunto cómo se
                dispone el ejemplo que comentas en Excel y claro no has
                indicado en el ejemplo ningún Fate_3 que permita obtener
                un Fate_3 <- c(0,0,0,NA) a partir del único que
                tienes Fate_3 <- c(0,NA,NA,NA). 
              
              
              Gracias,
              Carlos.
            
            
              El 29 de febrero de 2016,
                12:36, Ruben Bermad <ruben_bm en hotmail.com>
                escribió:
                Hola
                  a todos,
                  Quisiera juntar las informacion de dos data.frames con
                  una union de columnas un tanto especial. La
                  informacion que tengo son datos de captura-recaptura
                  de diferentes individuos, por ejemplo en una base de
                  datos tengo:ID <- c(1,2,3,4)Fate_1 <-
                  c(2,2,2,2)Fate_2 <- c(0,0,0,NA)Fate_3 <- c(0,
                  NA, NA, NA)
                  y en otra base de datos tengo:ID <- c(1,2,3)Fate_1
                  <- c(0, 0, 0, NA)Fate_2 <- c(NA, 0, NA, NA)
                  Como podeis ver no todos los fates de todos los
                  individuos  tienen algun valor, y lo que gustaria es
                  juntarlo sin the haya NAs entre diferentes Fates para
                  cada fila, que es lo que me sucederia si hiciera un
                  cbind entre los dos data.frames.
                  Lo que se me habia ocurrido era hacer un cbind, que
                  quedaria un resultado como este:ID <-
                  c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <-
                  c(0,0,0,NA)Fate_3 <- c(0, NA, NA, NA)Fate_1.Y <-
                  c(0, 0, 0, NA)Fate_2.Y <- c(NA, 0, NA, NA)
                  y despues ir fila por fila haciendo algo similar a lo
                  que seria en excel de eliminar unas celdas y desplazar
                  hacia la izquierda. Quedando las ultimas filas como
                  NA, y estando toda la informacion de los Fates
                  seguida, con el siguiente resultado:
                  ID <- c(1,2,3,4)Fate_1 <- c(2,2,2,2)Fate_2 <-
                  c(0,0,0,NA)Fate_3 <- c(0, 0, 0, NA)Fate_4 <-
                  c(0, 0, NA, NA)
                  Alguien sabe como podria hacer esta eliminacion de
                  celdas y desplazamiento hacia la izquierda de manera
                  automatica, u otra manera mejor para juntar esta
                  informacion?
                  Muchas gracias por adelantado, Un cordial saludo,Ruben
                          [[alternative HTML version deleted]]
                  
                  _______________________________________________
                  R-help-es mailing list
                  R-help-es en r-project.org
                  https://stat.ethz.ch/mailman/listinfo/r-help-es
                
              
              
              
              
              
              -- 
              Saludos,
                Carlos
                  Ortega
                www.qualityexcellence.es
            
          
        
      
      
      
      
      _______________________________________________
R-help-es mailing list
R-help-es en r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
    
    
 		 	   		  
	[[alternative HTML version deleted]]