Ejercicios resueltos con Módulos

4. Matrices con Numpy

NumPy es un paquete de Python que significa “Numerical Python”, es la librería principal para la informática científica, proporciona potentes estructuras de datos, implementando matrices y matrices multidimensionales. Estas estructuras de datos garantizan cálculos eficientes con matrices. Mas datos ver en https://www.numpy.org/

Consigna:

Resumiendo lo que podemos encontrar en el sitio oficial de Numpy , wikipedia, blogs, etc. Numpy es el paquete más básico pero poderoso para la computación científica y la manipulación de datos en Python. Nos permite trabajar con matrices y matrices multidimensionales.
Vamos a cargar una matriz con 4x4 con valores aleatorios y luego calculamos el máximo valor de la matriz, el mínimo de las columnas, el menor valor de la matriz, el determinante de la matriz, y finalmente ordenamos por columna.

Figura 1

La salida sería:

Figura 2

Dejo el código para que prueben.

import numpy  as np
n=4 #Dimensión de la matriz cuadrada
# carguemos dos matrices  de nxn con números aleatorios
matriz_A= np.random.randint(0, 100, size=(n, n))
print(matriz_A)   
print('El tipo de dato de matriz_A es: {}'.format(type(matriz_A)))
# Mostremos el máximo valor de la matriz_A
print('El mayor valor de la matriz_A es:{}'.format(matriz_A.max()))
#Mostraremos el menor elementos de las columas de la matriz_A
print('Los menores elemento de  {} columas son:{}'.format(n,matriz_A.min(axis=0)))#axis=0=>Columna
matriz_B= np.random.randint(0, 100, size=(n, n))
print(matriz_B)
# Mostremos el menor valor de la matriz_B
print('El menor valor de la matriz_B es:{}'.format(matriz_B.min()))
#Mostraremos el mayores elementos de las filas de la mna de matriz_B
print('Los mayores elemento de  {} filas son:{}'.format(n,matriz_B.max(axis=1))) #axis=1=>Fila
#Calculemos el determinante de matriz_A
print('El determinante de matriz_A es: {}'.format(np.linalg.det(matriz_A))) #linag p/operaciones lineales con matrices
# det calcula el determinante.
#Ordenemos la matriz_B por columna 0
indice=matriz_B[:,0].argsort(axis=0)
matriz_B_ordenada=matriz_B[indice,:]
print(matriz_B)
print(matriz_B_ordenada)