Matriz Python:Exemplos de matrizes de transposição, multiplicação, NumPy
O que é Matriz Python?
Uma matriz Python é uma matriz retangular bidimensional especializada de dados armazenados em linhas e colunas. Os dados em uma matriz podem ser números, strings, expressões, símbolos, etc. A matriz é uma das estruturas de dados importantes que podem ser usadas em cálculos matemáticos e científicos.
Neste tutorial Python, você aprenderá:
- O que é a Matriz Python?
- Como funcionam as matrizes Python?
- Crie uma matriz Python usando um tipo de dados de lista aninhada
- Para ler dados dentro do Python Matrix usando uma lista.
- Exemplo 2:Para ler o último elemento de cada linha.
- Exemplo 3:para imprimir as linhas na Matriz
- Adicionar matrizes usando lista aninhada
- Multiplicação de matrizes usando lista aninhada
- Criar matriz Python usando matrizes do pacote Python Numpy
- Operação de matriz usando Numpy.Array()
- Acessando a matriz NumPy
Como funcionam as matrizes Python?
Os dados dentro da matriz bidimensional em formato de matriz são os seguintes:
Etapa 1)
Mostra uma matriz 2×2. Tem duas linhas e 2 colunas. Os dados dentro da matriz são números. A linha1 tem valores 2,3 e a linha2 tem valores 4,5. As colunas, ou seja, col1, têm valores 2,4, e col2 tem valores 3,5.
Etapa 2)
Mostra uma matriz 2×3. Tem duas linhas e três colunas. Os dados dentro da primeira linha, ou seja, linha1, possuem valores 2,3,4 e linha2 possui valores 5,6,7. As colunas col1 tem valores 2,5, col2 tem valores 3,6 e col3 tem valores 4,7.
Da mesma forma, você pode ter seus dados armazenados dentro da matriz nxn em Python. Muitas operações podem ser feitas em uma adição, subtração, multiplicação, etc.
O Python não tem uma maneira direta de implementar um tipo de dados de matriz.
A matriz python faz uso de arrays, e o mesmo pode ser implementado.
- Crie uma matriz Python usando o tipo de dados de lista aninhada
- Criar matriz Python usando matrizes do pacote Python Numpy
Criar Python Matrix usando um tipo de dados de lista aninhada
Em Python, os arrays são representados usando o tipo de dados list. Então agora vamos usar a lista para criar uma matriz python.
Vamos criar uma matriz 3×3, conforme mostrado abaixo:
- A matriz tem 3 linhas e 3 colunas.
- A primeira linha em um formato de lista será a seguinte:[8,14,-6]
- A segunda linha de uma lista será:[12,7,4]
- A terceira linha de uma lista será:[-11,3,21]
A matriz dentro de uma lista com todas as linhas e colunas é mostrada abaixo:
List = [[Row1], [Row2], [Row3] ... [RowN]]
Então, de acordo com a matriz listada acima, o tipo de lista com dados da matriz é o seguinte:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Para ler dados dentro do Python Matrix usando uma lista.
Faremos uso da matriz definida acima. O exemplo lerá os dados, imprimirá a matriz, exibirá o último elemento de cada linha.
Exemplo:para imprimir a matriz
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] #To print the matrix print(M1)
Resultado:
The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]
Exemplo 2:para ler o último elemento de cada linha.
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To read the last element from each row. for i in range(matrix_length): print(M1[i][-1])
Resultado:
-6 4 21
Exemplo 3:Para imprimir as linhas na Matriz
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To print the rows in the Matrix for i in range(matrix_length): print(M1[i])
Resultado:
[8, 14, -6] [12, 7, 4] [-11, 3, 21]
Adicionando matrizes usando lista aninhada
Podemos facilmente adicionar duas matrizes dadas. As matrizes aqui estarão no formato de lista. Vamos trabalhar em um exemplo que terá o cuidado de somar as matrizes dadas.
Matriz 1:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Matriz 2:
M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]]
Last inicializará uma matriz que armazenará o resultado de M1 + M2.
Matriz 3:
M3 = [[0,0,0], [0,0,0], [0,0,0]]
Exemplo:adição de matrizes
Para adicionar, as matrizes usarão um loop for que percorrerá ambas as matrizes dadas.
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Add M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] + M2[i][k] #To Print the matrix print("The sum of Matrix M1 and M2 = ", M3)
Resultado:
The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]
Multiplicação de matrizes usando lista aninhada
Para multiplicar as matrizes, podemos usar o loop for em ambas as matrizes, conforme mostrado no código abaixo:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Multiply M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] * M2[i][k] #To Print the matrix print("The multiplication of Matrix M1 and M2 = ", M3)
Resultado:
The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]
Criar matriz Python usando matrizes do pacote Python Numpy
A biblioteca python Numpy ajuda a lidar com arrays. O Numpy processa um array um pouco mais rápido em comparação com a lista.
Para trabalhar com o Numpy, você precisa instalá-lo primeiro. Siga as etapas abaixo para instalar o Numpy.
Etapa 1)
O comando para instalar o Numpy é:
pip install NumPy
Etapa 2)
Para fazer uso do Numpy em seu código, você precisa importá-lo.
import NumPy
Etapa 3)
Você também pode importar o Numpy usando um alias, conforme mostrado abaixo:
import NumPy as np
Vamos usar o método array() do Numpy para criar uma matriz python.
Exemplo:Array em Numpy para criar Python Matrix
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
Resultado:
[[ 5 -10 15] [ 3 -6 9] [ -4 8 12]]
Operação de matriz usando Numpy.Array()
A operação matricial que pode ser feita é adição, subtração, multiplicação, transposição, leitura das linhas, colunas de uma matriz, fatiamento da matriz, etc. Em todos os exemplos, usaremos um método array().
Adição de matriz
Para realizar a adição na matriz, vamos criar duas matrizes usando numpy.array() e adicioná-las usando o operador (+).
Exemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 + M2 print(M3)
Resultado:
[[ 12 -12 36] [ 16 12 48] [ 6 -12 60]]
Subtração de matriz
Para realizar a subtração na matriz, vamos criar duas matrizes usando numpy.array() e subtraí-las usando o operador (-).
Exemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 - M2 print(M3)
Resultado:
[[ -6 24 -18] [ -6 -32 -18] [-20 40 -18]]
Multiplicação de matrizes
Primeiro irá criar duas matrizes usando numpy.arary(). Para multiplicá-los, você pode usar o método numpy dot(). Numpy.dot() é o produto escalar da matriz M1 e M2. Numpy.dot() manipula as matrizes 2D e realiza multiplicações de matrizes.
Exemplo:
import numpy as np M1 = np.array([[3, 6], [5, -10]]) M2 = np.array([[9, -18], [11, 22]]) M3 = M1.dot(M2) print(M3)
Resultado:
[[ 93 78] [ -65 -310]]
Transposição de matriz
A transposição de uma matriz é calculada, alterando as linhas como colunas e as colunas como linhas. A função transpose() do Numpy pode ser usada para calcular a transposição de uma matriz.
Exemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) M2 = M1.transpose() print(M2)
Resultado:
[[ 3 5 4] [ 6 -10 8] [ 9 15 12]]
Corte de uma matriz
O fatiamento retornará os elementos da matriz com base no índice inicial/final fornecido.
- A sintaxe para fatiar é – [início:fim]
- Se o índice inicial não for fornecido, ele será considerado como 0. Por exemplo, [:5], significa [0:5].
- Se o final não for passado, ele será o tamanho do array.
- Se o início/fim tiver valores negativos, o fatiamento será feito a partir do final da matriz.
Antes de trabalharmos no fatiamento de uma matriz, vamos primeiro entender como aplicar fatia em uma matriz simples.
import numpy as np arr = np.array([2,4,6,8,10,12,14,16]) print(arr[3:6]) # will print the elements from 3 to 5 print(arr[:5]) # will print the elements from 0 to 4 print(arr[2:]) # will print the elements from 2 to length of the array. print(arr[-5:-1]) # will print from the end i.e. -5 to -2 print(arr[:-1]) # will print from end i.e. 0 to -2
Resultado:
[ 8 10 12] [ 2 4 6 8 10] [ 6 8 10 12 14 16] [ 8 10 12 14] [ 2 4 6 8 10 12 14]
Agora vamos implementar o fatiamento na matriz. Para executar o fatiamento em uma matriz
a sintaxe será M1[row_start:row_end, col_start:col_end]
- O primeiro início/fim será para a linha, ou seja, para selecionar as linhas da matriz.
- O segundo início/fim será para a coluna, ou seja, para selecionar as colunas da matriz.
A matriz M1 tque vamos usar é a seguinte:
M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]])
Há um total de 4 linhas. O índice começa de 0 a 3. O 0 th linha é a [2,4,6,8,10], 1 st a linha é [3,6,9,-12,-15] seguida por 2 nd e 3 rd .
A matriz M1 tem 5 colunas. O índice começa de 0 a 4. O 0 th coluna tem valores [2,3,4,5], 1 st as colunas têm valores [4,6,8,-10] seguidos por 2 nd , 3 rd , 4 º , e 5 º .
Aqui está um exemplo mostrando como obter os dados de linhas e colunas da matriz usando o fatiamento. No exemplo, estamos imprimindo o 1 st e 2 e linha e, para colunas, queremos a primeira, a segunda e a terceira coluna. Para obter essa saída, usamos:M1[1:3, 1:4]
Exemplo:
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[1:3, 1:4]) # For 1:3, it will give first and second row. #The columns will be taken from first to third.
Resultado:
[[ 6 9 -12] [ 8 12 16]]
Exemplo:Para imprimir todas as linhas e terceiras colunas
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,3]) # This will print all rows and the third column data.
Resultado:
[ 8 -12 16 -20]
Exemplo:Para imprimir a primeira linha e todas as colunas
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:1,]) # This will print first row and all columns
Resultado:
[[ 2 4 6 8 10]]
Exemplo:para imprimir as três primeiras linhas e as primeiras 2 colunas
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:3,:2])
Resultado:
[[2 4] [3 6] [4 8]]
Acessando a Matriz NumPy
Vimos como o fatiamento funciona. Levando isso em consideração, veremos como obter as linhas e colunas da matriz.
Para imprimir as linhas da matriz
No exemplo irá imprimir as linhas da matriz.
Exemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) print(M1[0]) #first row print(M1[1]) # the second row print(M1[-1]) # -1 will print the last row
Resultado:
[3 6 9] [ 5 -10 15] [ 4 8 12]
Para obter a última linha, você pode usar o índice ou -1. Por exemplo, a matriz tem 3 linhas,
então M1[0] lhe dará a primeira linha,
M1[1] lhe dará a segunda linha
M1[2] ou M1[-1] fornecerá a terceira ou última linha.
Para imprimir as colunas da matriz
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,0]) # Will print the first Column print(M1[:,3]) # Will print the third Column print(M1[:,-1]) # -1 will give you the last column
Resultado:
[2 3 4 5] [ 8 -12 16 -20] [ 10 -15 -20 25]
Resumo:
- Uma matriz Python é uma matriz retangular bidimensional especializada de dados armazenados em linhas e colunas. Os dados em uma matriz podem ser números, strings, expressões, símbolos, etc. A matriz é uma das estruturas de dados importantes que podem ser usadas em cálculos matemáticos e científicos.
- O Python não tem uma maneira direta de implementar um tipo de dados de matriz. A matriz Python pode ser criada usando um tipo de dados de lista aninhada e usando a biblioteca numpy.
- A biblioteca python Numpy ajuda a lidar com arrays. O Numpy processa um array um pouco mais rápido em comparação com a lista.
- A operação matricial que pode ser feita é adição, subtração, multiplicação, transposição, leitura das linhas, colunas de uma matriz, fatiamento da matriz, etc.
- Para adicionar duas matrizes, você pode usar numpy.array() e adicioná-las usando o operador (+).
- Para multiplicá-los, você pode usar o método numpy dot(). Numpy.dot() é o produto escalar da matriz M1 e M2. Numpy.dot() manipula as matrizes 2D e realiza multiplicações de matrizes.
- A transposição de uma matriz é calculada alterando as linhas como colunas e as colunas como linhas. A função transpose() do Numpy pode ser usada para calcular a transposição de uma matriz.
- A divisão de uma matriz retornará os elementos com base no índice inicial/final fornecido.
python
- Dicionário Python
- Matrizes em C++ | Declare | Inicializar | Ponteiro para exemplos de matriz
- Instrução Python Print():Como imprimir com exemplos
- Python String count() com EXEMPLOS
- Python String format() Explique com EXEMPLOS
- Método Python String find() com exemplos
- Funções do Python Lambda com EXEMPLOS
- Função Python abs():exemplos de valor absoluto
- Função Python round() com EXEMPLOS
- Função range() do Python:Float, List, For loop Exemplos