[R-es] Problemas con tildes y otros caracteres en R y RStudio

Carlos Ortega cof en qualityexcellence.es
Mie Jun 22 09:53:33 CEST 2016


Hola,

Por si las recomendaciones de los de RStudio te pueden ayudar:

https://support.rstudio.com/hc/en-us/articles/200532197-Character-Encoding

Gracias,
Carlos Ortega
www.qualityexcellence.es

El 22 de junio de 2016, 5:27, amy cg <acarolinagc en gmail.com> escribió:

> 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
>>
>
>


-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]



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