Boa tarde
Seria uma má pratica de codigo, no lugar do
contador.reshape((5, 2), order='C') para ordenar o array
eu usar o .T e ficar
np.array(info_carros).reshape((2, 5)).T ?
Boa tarde
Seria uma má pratica de codigo, no lugar do
contador.reshape((5, 2), order='C') para ordenar o array
eu usar o .T e ficar
np.array(info_carros).reshape((2, 5)).T ?
Bom dia Paulo Vitor, tudo bem com você?
Antes de te responder, vamos pensar no que o reshape faz. O reshape dá uma nova forma a uma matriz sem alterar seus dados. Agora, vamos olhar o formato da matriz info_carros
no momento de criação. Temos o formato 1 linha e 10 colunas sendo:
[44410, 5712, 37123, 0, 25757, 2003, 1991, 1990, 2019, 2006]
Desconsiderando o nosso cenário, pensando na matriz em si, teríamos duas formas de remodelar ela, uma sendo para 2 linhas e 5 colunas ou apenas (2,5) e a outra para 5 linhas e 2 colunas ou apenas (5,2).
Considerando o nosso cenário onde os primeiros 5 elementos são km dos carros 44410, 5712, 37123, 0, 25757
e os últimos cinco são os respectivos os anos 2003, 1991, 1990, 2019, 2006
, e utilizando apenas o reshape, qual o formato separaria as informações de km e ano? O único formato que atende a nossa necessidade é a matriz (2,5), pois, teríamos na primeira linha km e a segunda linha ano. Vamos fazer isso então:
np.array(info_carros).reshape((2,5), order=’C’)
[[44410 5712 37123 0 25757]
[ 2003 1991 1990 2019 2006]]
Legal, com isso já conseguimos organizar como queríamos. Olhando esse novo formato da matriz (2,5), percebemos que agora podemos apresentar as informações também da forma (5,2): Primeira coluna km e segunda coluna ano. Como transformamos linhas em colunas de uma matriz? Exatamente da forma que você fez! Utilizando a função T, que entrega a matriz transposta:
np.array(info_carros).reshape(2,5).T
[[44410 2003]
[ 5712 1991]
[37123 1990]
[ 0 2019]
[25757 2006]]
Respondendo a sua pergunta, não há boa ou má prática nesse caso, eu diria que a escolha entre uma matriz com (2,5) e a sua transposta (5,2), vai depender de como você vai precisar dessa matriz para futuras manipulações.
Espero ter ajudado e bons estudos =D