Según decías en el primer mensaje, el merge no lo usabas con “classifiers” sino con “Classifiers_File”. Si los datos no son confidenciales puedes enviar los dos dataframes en un .RData e intento reproducir el error.
>>>> datos_unidos<-merge(datos, Classifiers_File, by = "Id") > El 15 feb 2021, a las 16:30, Andrea Guerrero <[email protected]> escribió: > > Hola Emilio, > gracias de nuevo por tu respuesta. He aplicado los colnames en el archivo de > los classifiers y en el de datos y parece que no hay problemas de espacio en > blanco al final. Este es el resultado que aparece: > > > colnames(classifiers) > [1] "Id" "Sexo" "Especie" > > colnames(datos) > [1] "1.X" "1.Y" "2.X" "2.Y" "3.X" "3.Y" "4.X" "4.Y" "5.X" "5.Y" > "6.X" "6.Y" "7.X" "7.Y" "8.X" "8.Y" > [17] "9.X" "9.Y" "10.X" "10.Y" "11.X" "11.Y" "12.X" "12.Y" "13.X" "13.Y" > "14.X" "14.Y" "15.X" "15.Y" "16.X" "16.Y" > [33] "17.X" "17.Y" "18.X" "18.Y" "19.X" "19.Y" "20.X" "20.Y" "21.X" "21.Y" > "22.X" "22.Y" "Id" > > No tengo ni idea de cual puede ser el problema. Muchísimas gracias por tu > aportación. > > Un saludo, > > Andrea. > > El lun, 15 feb 2021 a las 16:08, Emilio L. Cano (<[email protected] > <mailto:[email protected]>>) escribió: > 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 <[email protected] > > <mailto:[email protected]>> 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 (<[email protected] > > <mailto:[email protected]>>) > > 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 <[email protected] > >>>> <mailto:[email protected]>> > >> 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 (< > >> [email protected] <mailto:[email protected]> > >> <mailto:[email protected] <mailto:[email protected]>>>) 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 <[email protected] > >>>>> <mailto:[email protected]> > >> <mailto:[email protected] <mailto:[email protected]>>> 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 > >>>>> [email protected] <mailto:[email protected]> > >>>>> <mailto:[email protected] <mailto:[email protected]>> > >>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >>>>> <https://stat.ethz.ch/mailman/listinfo/r-help-es> < > >> 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 > >>> [email protected] <mailto:[email protected]> > >>> https://stat.ethz.ch/mailman/listinfo/r-help-es > >>> <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: [email protected] <mailto:[email protected]> > >> > >> > >> [[alternative HTML version deleted]] > >> > >> _______________________________________________ > >> R-help-es mailing list > >> [email protected] <mailto:[email protected]> > >> https://stat.ethz.ch/mailman/listinfo/r-help-es > >> <https://stat.ethz.ch/mailman/listinfo/r-help-es> > >> > > > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > R-help-es mailing list > > [email protected] <mailto:[email protected]> > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > <https://stat.ethz.ch/mailman/listinfo/r-help-es> > [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-help-es
