[R-es] Como leer una BD con una estructura inadecuada

Javier Marcuzzi javier.ruben.marcuzzi en gmail.com
Lun Abr 20 03:08:57 CEST 2015


Eric y Carlos

No recibí la sugerencia de Carlos, me gustaría poder leerla porque
personalmente prefiero json o xml sobre csv, porque tiene un "cuidado"
mayor sobre los datos aunque incrementa el tamaño del archivo.

Javier Marcuzzi

El 19 de abril de 2015, 21:27, Eric <ericconchamunoz en gmail.com> escribió:

> Muchas gracias Jose Luis, Carlos y Javier ... probe la libreria sugerida
> por Carlos y me sorprendio lo rapido que se cargaron los 77.2 MB comparado
> con el formato XML, le tomo apenas unos 10 segundos, luego pase el
> data.frame a data.table y todo funciona muy rapido. La libreria que
> recomienda Carlos de alguna identifico correctamente la columna que
> corresponde a cada dato y todo siguio impecable, solo hay que tener la
> precaucion de que los encabezados no sean de dos palabras ni usen como
> separador el signo menos, porque entonces R piensa que es una resta.
>
> Javier, los archivos en la pagina de la FIDE estan comprimidos, por eso
> aparecen con un tamaño notablemente menor.
>
> Muchas gracias a todos por su rapida y efectiva ayuda.
>
> Saludos, Eric..
>
>
>
> 2015-04-19 11:55 GMT-03:00 Javier Marcuzzi <
> javier.ruben.marcuzzi en gmail.com>:
>
> Estimado Eric
>>
>> ¿Cuál es el que necesita? Mire la página que usted dice, pero los
>> archivos no son de 70 mb o 180 mb. Hay otras opciones pero se me ocurrió
>> pasarlo a  mysql o sqlite y enviarle los datos en sql. Aunque si logra usar
>> xml, o como leí utilizando más especificaciónes con read.fwf el
>> inconveniente se solucionaría.
>>
>> Aunque puede haber un problema, y es con la memoria, al respecto podría
>> procesar de la forma que más fácil le resulte, pero por partes (archivos) y
>> guardar el resultado del data.frame en el disco, borrar la memoria de R,
>> procesar la siguiente parte, y luego unir todos los archivos que guardo en
>> el disco.
>>
>> Si tiene inconvenientes, yo no tendía problemas en pasar todo a sql y
>> usted luego lo importa.
>>
>> Javier Marcuzzi
>>
>> El 19 de abril de 2015, 0:37, eric <ericconchamunoz en gmail.com> escribió:
>>
>>> Estimado Javier:
>>>
>>> Disculpe mi imprecision al hablar de base de datos en este caso, en
>>> realidad es un conjunto interesante de datos pero no tiene exactamente
>>> estandar de BD .. en fin ... este conjunto de datos lo baje directamente de
>>> la pagina de la FIDE, que es la federacion internacional de ajedrez, en
>>> http://ratings.fide.com/download.phtml, es decir, estos datos son la BD
>>> original.
>>>
>>> Los datos se ofrecen en formato .txt, que es como yo los baje (70 MB), y
>>> en formato XML. que tambien lo baje, pero el archivo pesa alrededor de 180
>>> megas y se vuelve inmanejable con mi modesto portatil. Ni siquiera es
>>> posible visualizar los datos. Por esto use el archivo .txt para trate de
>>> importarlo en R y tuve los problemas que ya señale.
>>>
>>> Pense por un momento en que quiza seria posible reemplazar un conjunto
>>> de puntos de cualquier largo por un \tab o algo asi, pero al tener casillas
>>> vacias se pierde el orden de los datos. Es decir, si un dato corresponde a
>>> la ultima columna y todas las anteriores estan vacias, al final de la
>>> sustitucion quedara asociado a la primera columna. Al no haber patrones es
>>> dificil corregir la estructura del archivo de forma automatica y son
>>> demiados datos para intentar siquiera algo a manos.
>>>
>>> Esa es la situacion mas o menos.
>>>
>>> Alguna idea ??
>>>
>>> Saludos y gracias,
>>>
>>> Eric.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On 18/04/15 22:45, Javier Marcuzzi wrote:
>>>
>>>> Estimado Eric Concha
>>>>
>>>> Como usted dice, hay un problema, yo encontré inconvenientes al intentar
>>>> importar los datos que usted suministro. Pero se me ocurre una pregunta
>>>> ¿tiene usted acceso a la base de datos original? Porque si tiene acceso
>>>> hay dos posibilidades, el acceso real donde usted puede (depende que DB)
>>>> usar la parte de R para esa base de datos en particular, o si tiene
>>>> acceso pero por medio de otra persona, podría solicitar una consulta sql
>>>> de acuerdo a sus requerimientos y guardar los datos como a usted le
>>>> convenga. Otra posibilidad es preguntar si en lugar de un archivo txt
>>>> puede recibirlo en json, o sql (¿excel?), csv es bueno pero puede ser
>>>> que se presente algún problema (no es tan "seguro" como los anteriores),
>>>> pensando en que usted use otra base de datos.
>>>>
>>>> Javier Marcuzzi
>>>>
>>>> El 18 de abril de 2015, 20:03, eric <ericconchamunoz en gmail.com
>>>> <mailto:ericconchamunoz en gmail.com>> escribió:
>>>>
>>>>
>>>>     Estimados, tengo el siguiente problema:
>>>>
>>>>     Tengo una BD de 19 columnas y aprox 500 mil filas, la que tiene
>>>>     muchas celdas vacias y esta separada con espacios para hacer
>>>>     coincidir los datos bajo los encabezados.
>>>>
>>>>     Mi problema es que al tratar de importar a R la BD no se como tratar
>>>>     con los espacios vacios cuando se trata de una columna de numeros
>>>>     (para el texto puse na.strings = "NA") y tampoco se como hacer para
>>>>     que al leer cada dato este asociado al encabezado correcto, pues el
>>>>     numero de espacios que esta puesto entre cada dato varia de acuerdo
>>>>     a la extension en caracteres del dato (hay numeros, nombres, etc).
>>>>     Incluso hay encabezados de dos palabras y parece que R los considera
>>>>     dos encabezados distintos. Me explico ?
>>>>
>>>>     Como puedo hacer para leer la BD correctamente ? Alguna idea ??
>>>>
>>>>     Adjunto un archivo de muestra.
>>>>
>>>>     Muchas gracias.
>>>>
>>>>     Eric.
>>>>
>>>>
>>>>
>>>>
>>>>     --
>>>>     Forest Engineer
>>>>     Master in Environmental and Natural Resource Economics
>>>>     Ph.D. student in Sciences of Natural Resources at La Frontera
>>>> University
>>>>     Member in AguaDeTemu2030, citizen movement for Temuco with green
>>>>     city standards for living
>>>>
>>>>     Nota: Las tildes se han omitido para asegurar compatibilidad con
>>>>     algunos lectores de correo.
>>>>
>>>>     _______________________________________________
>>>>     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
>>>>
>>>>
>>>>
>>> --
>>> Forest Engineer
>>> Master in Environmental and Natural Resource Economics
>>> Ph.D. student in Sciences of Natural Resources at La Frontera University
>>> Member in AguaDeTemu2030, citizen movement for Temuco with green city
>>> standards for living
>>>
>>> Nota: Las tildes se han omitido para asegurar compatibilidad con algunos
>>> lectores de correo.
>>>
>>
>>
>
>
> --
> Nota: las tildes se han omitido para evitar conflictos con algunos
> lectores de correo.
>
> Frases notables:
> * SATYÂT NÂSTI PARO DHARMAH (No hay religion mas elevada que la verdad)
> * La oscuridad no se combate, se ilumina ...
> * Un economista es un experto que sabrá mañana por qué las cosas que
> predijo
> ayer no han sucedido hoy (Laurence Peter).
>

	[[alternative HTML version deleted]]



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