Não entendi muito bem a lógica na implementação do comando "reshape". Seria possível um detalhamento maior nesta questão? Obrigado!!
Não entendi muito bem a lógica na implementação do comando "reshape". Seria possível um detalhamento maior nesta questão? Obrigado!!
Olá, Lucas. Tudo bom?
Então Lucas, utilizamos o reshape()
quando queremos redimensionar o nosso array, então para exemplificar vamos entender melhor sobre ele nesse exemplo:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
Output:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|
Se temos a intenção, por exemplo, de separar esse conjunto de números em 4 linhas e em 3 colunas, podemos usar o reshape()
para isso. Lembrando que passamos o (numero de linhas, número de colunas) ou (x,y)
newarr = arr.reshape(4, 3)
print(newarr)
Output:
1 | 2 | 3 |
4 | 5 | 6 |
7 | 8 | 9 |
10 | 11 | 12 |
Perceba que eu não poderia fazer um reshape()
com 5 linhas e 3 colunas, pois a nova dimensão tem que ser compatível com a anterior, ou seja, você tem que fatorar a dimensão do array inicial. Por isso conseguimos redimensionar o array de (12,)
para (4,3)
pois 4x3 = 12.
Na aula tínhamos um array chamado z
com 10000 linhas ou (10000,)
e tínhamos que o xx
tinha a dimensão de (100,100)
, por isso redimensionamos o z
para o tamanho de xx
pois 100x100= 10000.
Se ainda tiver alguma dúvida, estou por aqui. Ótimos estudos e grande abraço!
Caro Paulo, agradeço muito a sua pronta resposta. Consegui entender sim! Revisitei os códigos da aula com a sua explicação e tudo ficou claro para mim. Abraços!