Matrices en Python y NumPy

Hoy veremos que son las Matrices en Python y Numpy.
Para dicho tema he sacado la información (que explica de manera detalla y de gran forma) de la siguiente fuente: https://www.programiz.com/python-programming/matrix 

Matrices en Python y NumPy

Índice

    ¿Que es una Matriz?


    Las matrices son una estructura de datos bidimencional donde los elementos se organizan en filas y columnas. Ejemplo de esto: 
    ¿Que es una Matriz?
    Esta matriz es una matriz de 3x4 porque tiene 3 filas y 4 columnas. 

    Matriz en Python

    Python no tiene un tipo de dato incorporado para trabajar con matrices, sin embargo podemos tratar la matriz como una lista de listas, por ejemplo:

    Lista de listas Python

    Puedes conocer las listas más a fondo en la siguiente entrada: Listas en Python

    Veamos como trabajar con una lista anidada:

    lista anidada python

    Veamos otro ejemplo, crearemos una matriz a través de un for anidado:

    Suma de matrices Python

    Otro ejemplo, transponer una matriz utilizando for anidado:

    Transponer matriz en python

    El uso de las listas anidadas para trabajar como una matriz funciona para tareas simples, sin embargo, a la hora de trabajar con matrices complejas podremos usar el paquete Numpy.

    Numpy Array

    NumPy es un paquete científico que admite un poderoso objeto de matriz N-Dimensional. Antes de comenzar a trabajar con NumPy necesitamos instalarlo:

    Como instalar NumPy

    Como instalar NumPy en Windows:
    Terminal: pip install numpy

    Como instalar NumPy en Ubuntu & Debian:
    Terminal: sudo apt-get install python-numpy

    Como instalar NumPy en Fedora:
    Terminal: sudo dnf install numpy

    Como instalar NumPy en Macports:
    Terminal: sudo port install py35-numpy

    Como instalar NumPy en Homebrew:
    Terminal: pip install numpy

    NumPy nos proporciona una matriz de elementos multidimensionales (que en realidad es un objeto), veamos un ejemplo:

    NumPy Python

    Como podemos ver, la clase Matriz de NumPy se llama ndarray.

    Como crear un Array en NumPy

    Hay varias formas de crear una array en NumPy, veamos un ejemplo con Integers, Floats y números complejos:

    Como crear un Array en NumPy

    Otro ejemplo, Array de ceros y unos: 

    Array de ceros y unos Python

    Otro ejemplo utilizando arange() y shape()

    arange() y shape() NumPy y Python

    Operaciones de Matriz con NumPy

    Anteriormente estuvimos haciendo operaciones con Matrices creadas a partir de listas de listas. Ahora vamos a realizar operaciones utilizando la librería NumPy:

    Ejemplo usando el operador + para sumar dos matrices:


    Sumar matrices con Numpy



    Ejemplo de multiplicación de matrices con NumPy utilizando el método dot():

    Multiplicar matrices en NuMpy

    Otro ejemplo, transponer un a matriz con NumPy utilizando el método transpose():

    Transponer un a matriz con NumPy

    Como podemos ver, NumPy hace que nuestra tarea sea mucho más fácil.

    Acceso a las matrices, filas y columnas

    Al igual que las listas, podemos acceder a los elementos de una matriz utilizando el índice. Comencemos con una matriz NumPy unidireccional:

    acceder a los elementos de una matriz con NumPy

    Ahora veamos como podemos acceder a los elementos de una matriz bidireccional (que básicamente una Matriz):

    Acceder a los elementos de una matriz bidirecciona NumPy

    Ejemplo accediendo a las filas de una matriz:

    Accediendo a las filas de una matriz

    Ejemplo accediendo a las columnas de una matriz: 

    Accediendo a las columnas de una matriz NumPy

    Porciones de una Matriz

    El corte de una matriz NumPy unidireccional es similar al de una lista. Veamos un ejemplo:

    Porciones de una Matriz NumPy

    Resumiendo podemos decir que trabajar con NumPy para manipular las matrices en vez de utilizar listas de listas hace que nuestro trabajo sea más sencillo.

    Espero que este resumen de Matrices Python y NumPy sea de su agrado.

    No olviden dejar sugerencias, dudas o cualquier otro comentario. Saludos

    Diego

    1. BGL dice:

      Muchas gracias por vuestro trabajo!!
      Muy bueno y muy claro el trabajo sobre matrices

    2. Nash dice:

      Gracias por el conocimiento y el aporte.Saludos

    3. Unknown dice:

      Gracias, muy buena informacion

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Subir

    Te has suscrito correctamente al boletín

    Se produjo un error al intentar enviar tu solicitud. Inténtalo de nuevo.

    Mi Diario Python will use the information you provide on this form to be in touch with you and to provide updates and marketing.