Download - Análisis de datos con Python
Análisis de datos con Python
2
Python
● Lenguaje de programación
– Interpretado.
– De propósito general.
– Orientado a objetos.
– Fácil de usar.● Se usa en la NASA.
● Pero no es necesario dominar la tecnología espacial para usarlo.
Python
>>> 1 + 1000
1001
>>> 4 * 25
100
>>> 3**2
9
>>> range(5)
[0, 1, 2, 3, 4]
>>> [x**2 for x in range(5)]
[0, 1, 4, 9, 16]
NumPy
● Biblioteca para cálculos numéricos con Python.
● Proporciona vectores multidimensionales y operaciones sobre ellos.
● Funcionalidad semejante a la de Matlab (según dicen).
NumPy
>>> import numpy as np
>>> x = np.linspace(0, 1, 10)
>>> x
array([ 0. , 0.11111111, 0.22222222, 0.33333333, 0.44444444,
0.55555556, 0.66666667, 0.77777778, 0.88888889, 1. ])
>>> y = 2 * x + 1 + np.random.normal(0, 0.1, 10)
>>> y
array([ 0.88954082, 1.25512384, 1.3863797 , 1.77321241, 2.06216476,
2.19758795, 2.29706792, 2.53780433, 2.90609934, 3.12747582])
>>> slope, offset = np.polyfit(x, y, 1)
>>> slope, offset
(2.1361285263597183, 0.9751814266462937)
Matplotlib
● Biblioteca para la generación de gráficos con Python.
● Interfaz funcional estilo Matlab.
● Interfaz orientada a objetos para un control más preciso del resultado.
● Ejemplos.
● Artículos en Pybonacci.
7
Matplotlib
>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> x = np.linspace(0, 1, 200)
>>> y = 2 * x + 1 + np.random.normal(0, 0.1, 200)
>>> slope, offset = np.polyfit(x, y, 1)
>>> plt.plot(x, y, 'x')
[<matplotlib.lines.Line2D object at 0x273b6d0>]
>>> xline = np.array(plt.xlim())
>>> yline = slope * xline + offset
>>> plt.plot(xline, yline)
[<matplotlib.lines.Line2D object at 0x273b310>]
>>> plt.show()
Matplotlib
Cuaderno de IPython (notebook)
● Interfaz web para el uso interactivo de Python.
● Inspirado en los notebooks de Mathematica y SAGE.
● Permite integrar en un navegador documentos que intercalan fragmentos de código y su salida (incluyendo gráficos).
● Ejemplos.
● Articulo en Pybonacci (con vídeo).
Pandas
● Biblioteca para el análisis de datos con Python.
● Proporciona estructuras tabulares de datos.
● Hace más amigable el uso de NumPy.
● Facilita el manejo de series temporales.
● Gráficos con Matplotlib.
● Buena integración con el cuaderno de IPython.
● Tutorial.
● Tutorial en video.
windng
● Biblioteca para el análisis de datos de viento.
● Medias (mensuales, diarias...) y disponibilidad.
● Periodos de referencia.
● Rosas de frecuencias y energía.
● Perfil vertical.
● Análisis de largo plazo.
● Intensidad de turbulencia.
● Creación de archivos .tab de WasP y .csv de openWind.
windng
● Poco madura:
– Escasa funcionalidad implementada hasta ahora.
– Interfaz inestable.● Ejemplos.
● Perfil vertical.
Para saber más
● Python
● NumPy
● Matplotlib
● IPython
● Pandas
● windng