• Publicidad

Perl para tratamiento de datos estadísticos en formato CSV

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Perl para tratamiento de datos estadísticos en formato CSV

Notapor karakol35 » 2009-02-07 10:46 @490

¡Hola a todos!

Agradezco enormemente a los que podáis sugerirme algo en relación a lo siguiente:

A partir de una serie de ficheros CSV (texto con columnas separadas por coma), necesito extraer información de operaciones bursátiles diarias y calcular una serie de estadísticas, para posteriormente presentarlas de una forma más elegante y, si es posible, con gráficas incluidas.

Necesito realizar sumas de varias filas de una misma columna, medias, búsqueda de valores máximos y mínimos, etc... además de conversiones de una moneda a otra, etc...

La pregunta es: ¿Me recomendáis Perl para crear un script que me genere este tipo de informes? ¿O pensáis que PHP es mejor? (no me apetece usar ideas propietarias tipo ASP o VB).

Procedo del C y del Assembler, por si os sirve de algo. Así que supongo que la curva de aprendizaje en cualquier script seria relativamente corta.

Si además me sugerís una forma de presentar los informes en PDF, si es que es posible, pues mejor que mejor.

¡Un millón de gracias por adelantado por vuestras respuestas! :)
karakol35
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2009-02-07 10:38 @484

Publicidad

Notapor kidd » 2009-02-07 12:06 @546

Hola,

Yo siempre recomendaría aprender Perl sobre PHP, en mi opinión tienes mucho más poder y estabilidad.

En tu caso especifico ya tienes herramientas que puedes usar para realizar lo que deseas.

Para leer el CSV puedes usar el módulo DBI que cuenta con DBD::CSV. Y en el sitio tenemos un pequeño tutorial que te muestra de manera básica como usarías el módulo DBI:
http://perlenespanol.com/tutoriales/bas ... abase.html

Después quieres gráficar los datos, pues también en el sitio tenemos un tutorial que te puede servir de guía:
http://perlenespanol.com/tutoriales/gra ... _perl.html

Y finalmente, para crear tus PDFs también existen muchos módulos en CPAN y es algo que se ha tratado muchas veces en el sitio.
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor salva » 2009-02-07 18:14 @801

A mi se me ocurren dos maneras de hacer lo que dices:
    1- Hacer un programa nuevo que lo haga todo y que genere el informe en HTML o PDF.

    2- Usar una aplicación de hoja de calculo que sea "scriptable" (Excel, OpenOffice.org, Gnumeric, etc).
Para la primera solución, Perl es una buena opción, aunque si vas a tener que hacer trabajos estadísticos con frecuencia también deberías de echarle un vistazo al lenguaje R (http://www.r-project.org/).

Para la segunda solución, con Excel en Windows podrás usar Perl con los módulos para manipular objetos OLE (a veces es difícil encontrar documentación clara). Si estás en Unix la cosa se complica un poco más porque los bindings que hay de Perl para OpenOffice.org y para Gnumeric están un poco verdes... ¡lo cierto es que los de Python están bastante mejor!
Última edición por salva el 2009-02-08 04:29 @228, editado 1 vez en total
Avatar de Usuario
salva
Perlero nuevo
Perlero nuevo
 
Mensajes: 200
Registrado: 2008-01-03 15:19 @680

Notapor explorer » 2009-02-07 21:52 @953

Bienvenido a los foros de Perl en Español, karakol35.

Aparte de las recomendaciones de salva y kidd, yo te comento el módulo Data::Table, que tiene opciones muy interesantes para manipular ficheros y datos en forma tabular.

Puedes leer datos desde CSV, Excel y desde una base de datos. Luego, manipular filas, columnas. Agrupar columnas como claves de búsqueda. Crear subrutinas de cálculo estadístico que puedes aplicar a subconjuntos de filas que cumplan un patrón. Y volcar la salida a HTML, gráficos...

Salida a PDF directa no tiene, pero se puede usar en ese caso el módulo PDF::ReportWriter.

De todas maneras, te prevengo que en CPAN puedes encontrar DOCENAS de formas distintas de resolver el problema.

Busca por "finance" y "stock" para encontrar los módulos relativos a finanzas. Por "data", "csv" o "tabular", para el tratamiento de datos en forma tabular. "pdf" para todo lo relacionado con ese formato. Y con "report" para la generación de informes.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Gracias!!!

Notapor karakol35 » 2009-02-08 10:20 @472

Muchísimas gracias a los 3 por vuestras detalladas explicaciones. Me pongo manos a la obra con la tarea. Espero tener el script en menos de una semana, ya que me urge.

Supongo que si me surge alguna duda insalvable, ¡volveré a daros la lata! :)

Lo dicho, ¡gracias de nuevo a los 3!
karakol35
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2009-02-07 10:38 @484


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 54 invitados