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)