[R-es] Problema con "merge" - 0 observaciones

Emilio L. Cano em||opezc@no @end|ng |rom gm@||@com
Lun Feb 15 16:07:57 CET 2021


A ver esto: a veces me ha pasado que al importar datos de excel los encabezados de columna tienen espacios en blanco al final, y forman parte del nombre. Por ejemplo, si los nombres son “Id” e “Id “, no va a hacer el join. Ejecuta colnames(Classifiers_File) y colnames(datos) a ver si en alguno de los dos “Id” no es exactamente “Id”. 

Un saludo,
Emilio

> El 15 feb 2021, a las 16:01, Andrea Guerrero <guerbach using gmail.com> escribió:
> 
> Gracias por la ayuda. Tanto en el tps como en el archivo Excel la columna
> de los id's están como caracteres, así que supongo que, en este caso, no es
> parte del problema.
> 
> El lun, 15 feb 2021 a las 12:06, JA Palazón Ferrando (<palazon using um.es>)
> escribió:
> 
>> Hola:
>> 
>> Por si es útil:
>> 
>> Cuidado con la lectura de los ficheros con campos
>> con textos (habitualmente los ID), se convierten en factores y
>> no son útiles para merge.
>> 
>> Seguimos
>> 
>> El 15/2/21 a las 11:53, Emilio L. Cano escribió:
>>> No hay de qué Andrea, encantado de ayudar.
>>> 
>>> Las columnas Id son las dos tipo carácter y debería hacer los “join”,
>> pero puede que no lo haga porque Classifiers_File es un tibble y no un
>> data.frame “puro”. Prueba a forzarlo así:
>>> 
>>>> datos_unidos<-merge(datos, as.data.frame(Classifiers_File), by = "Id")
>>> A ver si funciona.
>>> 
>>> Un saludo,
>>> Emilio
>>> 
>>>> El 15 feb 2021, a las 11:39, Andrea Guerrero <guerbach using gmail.com>
>> escribió:
>>>> 
>>>> Muchas gracias por responder tan rápido. Estoy muy agradecida.
>>>> 
>>>> Envío en el adjunto un .txt con la salida de str(datos) y str
>> (Classifiers_File). En cuanto al error, no me da ningún mensaje
>> advirtiéndome del problema, simplemente no me hace el "merge". No obstante,
>> adjunto también una captura de pantalla de como queda el archivo una vez
>> que aplicado la función.
>>>> 
>>>> Gracias de nuevo.
>>>> 
>>>> El lun, 15 feb 2021 a las 10:48, Emilio L. Cano (<
>> emilopezcano using gmail.com <mailto:emilopezcano using gmail.com>>) escribió:
>>>> Hola Andrea,
>>>> 
>>>> No estoy seguro, pero posiblemente sea por el tipo de datos de las
>> columnas a unir. Si compartes la salida que str(datos) y
>> str(Classifiers_File) producen justo antes de llamar a merge podemos
>> comprobarlo.
>>>> 
>>>> Un saludo,
>>>> Emilio
>>>> 
>>>>> El 15 feb 2021, a las 9:40, Andrea Guerrero <guerbach using gmail.com
>> <mailto:guerbach using gmail.com>> escribió:
>>>>> 
>>>>> Buenos días,
>>>>> Llevo más de una semana estancada en un problema que no logro
>> solucionar.
>>>>> Agradecería muchísimo si alguien me pudiera echar una mano y ayudar a
>>>>> resolverlo. Ahora mismo estoy bloqueada con este asunto.
>>>>> 
>>>>> Mi intención es hacer un merge de un dataframe (un tps) y un excel que
>>>>> contiene los classifiers para poder hacer los análisis posteriores. El
>>>>> problema está en que, cuando aplico la función " datos_unidos <-*merge
>>>>> (datos, classifiers, by = "Id")* , el archivo creado me aparece como
>> con *0
>>>>> observaciones*. Lo raro es que esta función me funciona con algunos
>>>>> archivos y con otros no. He probado en esta misma función poner los
>>>>> argumentos by.x= "Id" y by.y= "Id". También, he probado de pasar el
>> archivo
>>>>> excel de los classifiers en un dataframe pero sin éxito.
>>>>> 
>>>>> Por si sirve de algo, este es el procedimiento que he seguido:
>>>>> 
>>>>>> library(geomorph)
>>>>>> tps <-readland.tps(file.choose("File.tps"), specID = c("ID"),
>> readcurves
>>>>> = TRUE, warnmsg = T)
>>>>>> slides <- define.sliders(c(3:22))
>>>>>> gpa <- gpagen(A=tps,curves = slides, PrinAxes = TRUE, Proj = TRUE,
>>>>> ProcD=FALSE, print.progress = TRUE)
>>>>>> gdf <- geomorph.data.frame(gpa)
>>>>>> gdf$coords
>>>>>> datos1 <-two.d.array(gdf$coords)
>>>>>> datos<-as.data.frame(datos1)
>>>>> *#Classifiers*
>>>>>> datos$Id<-rownames(datos)
>>>>>> datos_unidos<-merge(datos, Classifiers_File, by = "Id")
>>>>> Muchas gracias de antemano.
>>>>> 
>>>>>       [[alternative HTML version deleted]]
>>>>> 
>>>>> _______________________________________________
>>>>> R-help-es mailing list
>>>>> R-help-es using r-project.org <mailto:R-help-es using r-project.org>
>>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es <
>> https://stat.ethz.ch/mailman/listinfo/r-help-es>
>>>> <Datos consola.txt><Captura de pantalla_merge0observaciones.JPG>
>>> 
>>>      [[alternative HTML version deleted]]
>>> 
>>> _______________________________________________
>>> R-help-es mailing list
>>> R-help-es using r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>> 
>> --
>> ____________________________________________________________
>> José Antonio Palazón Ferrando
>> Profesor Titular. Departamento de Ecología e Hidrología.
>> Facultad de Biología. Universidad de Murcia.
>> Campus Universitario de Espinardo
>> 30100 MURCIA-SPAIN
>> Telf: +34 868 88 49 80
>> Fax : +34 868 88 39 63
>> Email: palazon using um.es
>> 
>> 
>>        [[alternative HTML version deleted]]
>> 
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es using r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>> 
> 
> 	[[alternative HTML version deleted]]
> 
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es



Más información sobre la lista de distribución R-help-es