Los padres físicos y virtuales de la criatura: Fernando Pérez y John Hunter, Numpy y Matplotlib
http://2013.es.pycon.org/media/python-ciencia-amor.pdf by @pybonacci
Proyecto muy activo en Github https://github.com/ipython/ipython desde donde lo clonaremos para instalarlo o correremos inmediatamente
Práctica con los atajos del teclado (Esc-h) mientras vemos las posibilidades de edición de texto con Markdown en ipython http://127.0.0.1:8888/notebooks/Dia%20Pythonista%20en%20Sorbas%20/Markdown%20Cells.ipynb
Veremos también el autocompletado con tab , el uso de comandos del terminal de linux (ls, cd, pwd, cat, etc ...) , las magias y las ayudas con ?
En el siguiente minitutorial nos podremos hacer una idea de lo que va: http://127.0.0.1:8888/notebooks/Dia%20Pythonista%20en%20Sorbas%20/Clase%203.ipynb
El archivo populations.txt muestra las poblaciones de liebres , linces y zanahorias en el norte de Canada durante los veinte primeros años del siglo pasado
cat populations.txt
#Cargamos los módulos que vamos a necesitar
import numpy as np
from matplotlib import pyplot as plt
%matplotlib inline
#Metemos los datos del txt en un array de numpy
data = np.loadtxt('populations.txt') # Convierte data en un array bidimensional, en una matriz vamos ...
print data
year, hares, lynxes, carrots = data.T # Traspuesta
print year
print carrots
#Dibujo el gráfico
plt.plot(year,hares, year, lynxes, year,carrots)
plt.legend(('Hare', 'Lynx', 'Carrot'))
# Recorto la matriz de datos para quedarme solo con las poblaciones (slicing)
populations = data[:, 1:]
# Valores estadísticos de las poblaciones: Media y desviación típica
print populations.mean(axis=0)
print populations.std(axis=0)
# ¿Que especies tienen la población más alta cada año?
np.argmax(populations, axis=1)
# ¿Que años son superados los 50000 elementos por alguna población?
print populations > 50000
print ""
print populations[populations > 50000]
print ""
above_50000 = np.any(populations > 50000, axis=1) # np.any devuelve un array con True donde se cumpla alguna de las condiciones
print above_50000
print ""
print "Any above 50000: ", year[above_50000]
Un ejemplo sencillo para el análisis de señales http://glowingpython.blogspot.com.es/2011/08/how-to-plot-frequency-spectrum-with.html
Para algo mas riguroso, seguir la documentación: http://docs.scipy.org/doc/scipy/reference/tutorial/signal.html
Visor de notebooks online: http://nbviewer.ipython.org/
Ejemplos del procesado de señales: http://nbviewer.ipython.org/github/unpingco/Python-for-Signal-Processing/tree/master/
Tipos de gráficos http://nbviewer.ipython.org/github/Pybonacci/Tutorial-de-matplotlib.pyplot-en-pybonacci/blob/master/tutorial_de_matplotlib.pyplot.ipynb
Guia de choque de Python científico http://nbviewer.ipython.org/gist/rpmuller/5920182
Localizador de machismo made by python http://nbviewer.ipython.org/gist/nealcaren/5105037
Para quien quiera saber más de Python científico http://scipy-lectures.github.io/index.html
@pybonacci https://twitter.com/Pybonacci
github https://github.com/ipython
¿ Por qué tanto revuelo con ipython? http://www.reddit.com/r/Python/comments/1q9tq7/what_is_the_big_deal_about_ipython_notebooks/
Mas Python en general http://2013.es.pycon.org/