Está en la página 1de 3

4.1.

Numpy
Autores: Jos Mara Herrera Fernndez, Luis Miguel Snchez Brea
Contenidos de este captulo:
Carga de un archivo de datos
Arrays
Matrices
Operaciones y funciones
Uno de los mdulos ms importantes de Python es Numpy. El origen de
Numpy se debe principalmente al diseador de software Jim Hugunin quien
dise el mdulo Numeric para dotar a Python de capacidades de clculo
similares a las de otros softwares como MATLAB. Posteriormente, mejor
Numeric incorporando nuevas funcionalidades naciendo lo que hoy conocemos
como Numpy.
Numpy es el encargado de aadir toda la capacidad matemtica y vectorial a
Python haciendo posible operar con cualquier dato numrico o array
(posteriormente veremos qu es un array). Incorpora operaciones tan bsicas
como la suma o la multiplicacin u otras mucho ms complejas como la
transformada de Fourier o el lgebra lineal. Adems incorpora herramientas
que nos permiten incorporar cdigo fuente de otros lenguajes de programacin
como C/C++ o Fortran lo que incrementa notablemente su compatibilidad e
implementacin.
Para poder utilizar este mdulo sino hemos instalado python(x,y) lo primero
que debemos de hacer es descargarnos la ltima versin desde el sitio
oficial http://www.scipy.org/Download. En caso de que nuestro sistema
operativo sea Linux probablemente venga instalado dentro de Python. De no
ser as debemos instalarlo por el mtodo habitual. Para ms informacin y
otros sistemas operativos consultar las notas oficiales de instalacin. Para
cargar el mdulo en Python y poder llamarlo de formar ms cmoda es de uso
extendido la utilizacin del alias np,
import numpy as np

4.1.1. Carga de un archivo de datos


En el mbito cientfico es frecuente almacenar y trasladar paquetes de datos en
archivos escritos en, por ejemplo, cdigo ASCII. Python incorpora varias
funciones que nos permiten la lectura y escritura en estos archivos facilitando
su manejo. Un ejemplo de ello es el comando loadtxt que nos permite cargar
los datos contenidos en un archivo de texto o dat.
Ejemplo 4.1
>>> import numpy as np # Importamos numpy como el alias np
# Cargamos los datos de archivo.txt en datos. En este caso el delimitador
es la coma.
>>> datos = numpy.loadtxt('C:\ruta\a\tu\archivo.txt', delimiter = ',')

Ejemplo 4.2
>>> import numpy as np # Importamos numpy como el alias np.
>>> archivoDatos = np.loadtxt('codigo\archivoDatos.dat')
>>> print (archivoDatos) # Presentamos en pantalla los datos cargados.

Ejemplo 4.3
>>> from StringIO import StringIO # StringIO se comporta como un
archivo objeto.
>>> c = StringIO("0 1\n2 3")
>>> np.loadtxt(c)
array([[ 0., 1.],
[ 2., 3.]])

4.1.2. Arrays
Con toda probabilidad, el lector que haya realizado un acercamiento a
cualquier lenguaje de programacin habr odo hablar de arrays. Un array es el
termino que traslada el concepto matemtico de vector o matriz a la
programacin aadindole la nocin de almacenamiento en memoria. Los
arrays disponen en su interior de una serie de elementos dispuestos en filas y/o
columnas dependiendo de la dimensin.
El desarrollo y la principal finalidad del mdulo Numpy es la creacin y
modificacin de arrays multidimensionales. Para este fin utilizaremos las
clase ndarray del ingles N-dimensional array o usando su alias simplemente
array (no confundir con la clase array.array que ofrece menos funcionalidad).
En Python cada clase puede tener atributos que se pueden llamar con el
mtodo visto anteriormente o simplemente escribiendo a continuacin de la
clase un punto y el atributo. En la mayora de los IDEs al cargar la clase y
escribir el punto aparecen todos los atributos disponibles en orden alfabtico
por lo que en caso de dudar siempre podemos utilizar este mtodo para escribir
el comando. En el caso de ndarray los principales atributos son los siguientes:
ndarray.ndim > Proporciona el nmero de dimensiones de nuestro
array. El array identidad es un array cuadrado con una diagonal
principal unitaria.
ndarray.shape > Devuelve la dimensin del array, es decir, una tupla
de enteros indicando el tamao del array en cada dimensin. Para una
matriz de n filas y m columnas obtendremos (n,m).
ndarray.size > Es el nmero total de elementos del array.
ndarray.dtype > Es un objeto que describe el tipo de elementos del
array.
ndarray.itemsize > devuelve el tamao del array en bytes.
ndarray.data > El buffer contiene los elementos actuales del array.
Veamos un ejemplo de su uso con un array sencillo de diez elementos,

También podría gustarte