[R-es] Problemas con tildes y otros caracteres en R y RStudio
amy cg
acarolinagc en gmail.com
Mie Jun 22 05:27:49 CEST 2016
Saludo:
Estoy usando knit y markdownToHTML y aún tengo problemas con las tildes y
ñ. Estoy en windows. Tengo esto en mi código
knit("xxxx", quiet = TRUE,encoding = "utf-8")
markdownToHTML("x.md","xx.html", title="x", stylesheet="xx.css",
options=c(markdownHTMLOptions(defaults = TRUE), "toc"))
----
Resultado ejemplo
Número de lÃÂneas : 1891714
DESDE YA MUCHAS GRACIAS.
l
El 21 de junio de 2016, 11:48, giltrapo <giltrapo en gmail.com> escribió:
> Hola, Carlos.
>
> Pues, efectivamente, me ha ayudado.
>
> Sobre la utilización de la función geocode con ciudades con tilde, me dio
> Carlos Gil Bellosta anteriormente la idea de utilizar iconv para
> transformar la cadena de búsqueda a UTF-8, y yo lo utilicé para intentar
> transformar el output de html_table sin resultado:
>
> capitales <- read_html("
>
> https://es.wikipedia.org/wiki/Anexo:Capitales_de_provincia_de_Espa%C3%B1a_por_poblaci%C3%B3n
> ")
> capitales <- html_nodes(capitales, "table")
> capitales <- html_table(capitales[[1]])$Ciudad
> capitales <- iconv(capitales, to = "UTF-8")
>
> En la referencia que me has pasado he visto que utilizaban la función iconv
> de una forma curiosa
>
> capitales <- iconv(capitales, from = "UTF-8" to = "UTF-8")
>
> que, sin saber por qué, ha funcionado perfectamente.
>
> Por cierto, Carlos Gil, tu solución para la llamada a geocode basada en
> iconv también funciona perfectamente, aunque esta vez sin poner el
> argumento "from"
>
> geocode("Málaga", to = "UTF-8")
>
> ya que si lo añadimos da error.
>
> Muchas gracias a ambos!!
>
>
> Jose Ignacio
>
> 2016-06-21 14:09 GMT+02:00 Carlos Ortega <cof en qualityexcellence.es>:
>
> > Hola,
> >
> > Creo que esta referencia te puede ayudar:
> >
> http://stackoverflow.com/questions/29379771/utf-8-encoding-problems-with-r
> >
> > Saludos,
> > Carlos Ortega
> > www.qualityexcellence.es
> >
> > El 21 de junio de 2016, 13:15, giltrapo <giltrapo en gmail.com> escribió:
> >
> >> Hola, Carlos.
> >>
> >> A mí también me resulta raro, porque no me pasa siempre. Es un poco
> >> aleatorio. Imagino que habrá alguna razón, y que el código de la página
> >> estará relacionado, claro, pero no consigo averiguar a qué se debe.
> >>
> >> Además las pruebas que hago me dejan todavía más perplejo.
> >>
> >> Esto
> >>
> >> Encoding(capitales)
> >>
> >> me dice que el encoding es "unknow", pero luego esto
> >>
> >> validUTF8(capitales)
> >>
> >> me dice que sí, que todo es "TRUE".
> >>
> >> También probé
> >>
> >> guess_encoding("
> >>
> >>
> https://es.wikipedia.org/wiki/Anexo:Capitales_de_provincia_de_Espa%C3%B1a_por_poblaci%C3%B3n
> >> ")
> >>
> >> y el resultado es
> >>
> >> encoding language confidence
> >> 1 ISO-8859-1 es 0.70
> >> 2 ISO-8859-2 ro 0.43
> >> 3 ISO-8859-9 tr 0.16
> >> 4 UTF-8 0.15
> >> 5 UTF-16BE 0.10
> >> 6 UTF-16LE 0.10
> >> 7 Shift_JIS ja 0.10
> >> 8 GB18030 zh 0.10
> >> 9 EUC-JP ja 0.10
> >> 10 EUC-KR ko 0.10
> >> 11 Big5 zh 0.10
> >>
> >> He ido probando cada uno de esos encodings, al llamar a la función
> >> read_html, pero nada, sigue sin codificarlo bien. También probé a
> utilizar
> >> iconv, pero sin resultados positivos.
> >>
> >> En fin, seguiré investigando.
> >>
> >> Muchas gracias y saludos!
> >>
> >> Jose Ignacio
> >>
> >> 2016-06-21 12:07 GMT+02:00 Carlos J. Gil Bellosta <cgb en datanalytics.com
> >:
> >>
> >> > Hola, ¿qué tal?
> >> >
> >> > Son los dichosos "encodings". De todos modos, me parece raro que rvest
> >> > lo haga mal: promete que va a interpretar lo leído de acuerdo con el
> >> > "encoding" declarado en la página, por lo que no debería haber
> >> > problemas en ninguna plataforma. De todos modos, tienes una opción en
> >> > rvest para indicar el juego de caracteres. Igual indicando "latin1"
> >> > funciona.
> >> >
> >> > También he visto problemas llamando a ggmap::geocode desde Windows
> >> > cuando la cadena contiene caracteres no ascii. Hay información aquí:
> >> >
> >> > https://github.com/dkahle/ggmap/issues/89
> >> >
> >> > No sé si tratar de transformar la cadena de búsqueda a UTF8 con iconv
> >> > ayudará o no a resolver el problema.
> >> >
> >> > Un saludo,
> >> >
> >> > Carlos J. Gil Bellosta
> >> > http://www.datanalytics.com
> >> >
> >> > El día 21 de junio de 2016, 11:52, giltrapo <giltrapo en gmail.com>
> >> escribió:
> >> > > Hola.
> >> > >
> >> > > Tengo algún tipo de problema con las tildes, a la hora de trabajar
> en
> >> R o
> >> > > en RStudio, que no sé resolver.
> >> > >
> >> > > Intentando reproducir en dos PCs distintos, ambos con Windows 7, uno
> >> de
> >> > los
> >> > > últimos ejercicios que ha publicado Carlos Gil Bellosta en su blog (
> >> > >
> >> >
> >>
> https://www.datanalytics.com/2016/06/20/6602-767-km-alrededor-de-espana-para-visitar-todas-sus-capitales-de-provincia/
> >> > ),
> >> > > me ocurre que al ejecutar el código
> >> > >
> >> > > library(rvest)
> >> > > library(caRtociudad)
> >> > > library(reshape2)
> >> > > library(ggmap)
> >> > > library(plyr)
> >> > > library(TSP)
> >> > >
> >> > > capitales <- read_html("
> >> > >
> >> >
> >>
> https://es.wikipedia.org/wiki/Anexo:Capitales_de_provincia_de_Espa%C3%B1a_por_poblaci%C3%B3n
> >> > > ")
> >> > > capitales <- html_nodes(capitales, "table")
> >> > > capitales <- html_table(capitales[[1]])$Ciudad
> >> > >
> >> > > obtengo esto:
> >> > >
> >> > >> capitales
> >> > >
> >> > > [1] "Madrid" "Barcelona"
> >> > > [3] "Valencia" "Sevilla"
> >> > > [5] "Zaragoza" "Málaga"
> >> > > [7] "Murcia" "Palma de Mallorca"
> >> > > [9] "Las Palmas de Gran Canaria" "Bilbao"
> >> > > [11] "Alicante" "Córdoba"
> >> > > [13] "Valladolid" "La Coruña"
> >> > > [15] "Vitoria" "Granada"
> >> > > [17] "Oviedo" "Santa Cruz de Tenerife"
> >> > > [19] "Pamplona" "AlmerÃa"
> >> > > [21] "San Sebastián" "Burgos"
> >> > > [23] "Santander" "Castellón de la Plana"
> >> > > [25] "Albacete" "Logroño"
> >> > > [27] "Badajoz" "Salamanca"
> >> > > [29] "Huelva" "Lérida"
> >> > > [31] "Tarragona" "León"
> >> > > [33] "Cádiz" "Jaén"
> >> > > [35] "Orense" "Lugo"
> >> > > [37] "Gerona" "Cáceres"
> >> > > [39] "Santiago de Compostela" "Ceuta"
> >> > > [41] "Melilla" "Guadalajara"
> >> > > [43] "Toledo" "Pontevedra"
> >> > > [45] "Palencia" "Ciudad Real"
> >> > > [47] "Zamora" "Mérida"
> >> > > [49] "Ã vila" "Cuenca"
> >> > > [51] "Segovia" "Huesca"
> >> > > [53] "Soria" "Teruel"
> >> > >
> >> > > Es decir, no aparecen ni tildes ni eñes.
> >> > >
> >> > > Si, en cambio, ejecuto
> >> > >
> >> > > library(XML)
> >> > > library(RCurl)
> >> > >
> >> > > capitales <- data.frame(readHTMLTable(getURL("
> >> > >
> >> >
> >>
> https://es.wikipedia.org/wiki/Anexo:Capitales_de_provincia_de_Espa%C3%B1a_por_poblaci%C3%B3n
> >> > > ")))
> >> > >
> >> > > obtengo un data frame en el que las ciudades ya aparecen con sus
> >> tildes y
> >> > > sus eñes...aunque en los nombres de las variables siguen apareciendo
> >> esos
> >> > > caracteres extraños en vez de tildes.
> >> > >
> >> > > Con el resto del código de Carlos me sigue ocurriendo lo mismo, ya
> >> que si
> >> > > intento
> >> > >
> >> > > geocode("Logroño")
> >> > >
> >> > > me devuelve
> >> > >
> >> > > Information from URL :
> >> > >
> >> >
> >>
> http://maps.googleapis.com/maps/api/geocode/json?address=Logro%F1o&sensor=false
> >> > > lon lat
> >> > > 1 NA NA
> >> > > Warning messages:
> >> > > 1: In readLines(connect, warn = FALSE) :
> >> > > cannot open URL '
> >> > >
> >> >
> >>
> http://maps.googleapis.com/maps/api/geocode/json?address=Logro%F1o&sensor=false
> >> > ':
> >> > > HTTP status was '400 Bad Request'
> >> > > 2: In geocode("Logroño") : geocoding failed for "Logroño".
> >> > > if accompanied by 500 Internal Server Error with using dsk, try
> >> google.
> >> > >
> >> > > en cambio, si pruebo con
> >> > >
> >> > > geocode("Logrono")
> >> > >
> >> > > la respuesta es correcta
> >> > >
> >> > > Information from URL :
> >> > >
> >> >
> >>
> http://maps.googleapis.com/maps/api/geocode/json?address=Logrono&sensor=false
> >> > > lon lat
> >> > > 1 -2.444985 42.46272
> >> > >
> >> > > Lo mismo ocurre si intento capturar las coordenadas de Málaga,
> >> Castellón,
> >> > > etc. Si lleva tildes o eñes, no reconoce el texto.
> >> > >
> >> > > Entiendo que todo esto se debe a algún problema de codificación,
> pero
> >> no
> >> > sé
> >> > > cómo arreglarlo. Tampoco sé por qué con read_html capturo los datos
> >> mal,
> >> > > pero con readHTMLTable y RCurl los capturo bien...a medias.
> >> > >
> >> > > ¿Alguien tiene alguna idea sobre qué puede estar ocurriendo?
> >> > >
> >> > > Jose Ignacio
> >> > >
> >> > > [[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
> >> >
> >>
> >> [[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
> >
>
> [[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
>
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es