Topic: Reshape 3d array  (Letto 174 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline lucajust

  • python unicellularis
  • *
  • Post: 22
  • Punti reputazione: 0
    • Mostra profilo
Reshape 3d array
« il: Maggio 24, 2018, 22:29 »
salve, ho di nuovo bisogno di aiuto.
ho bisogno di capire come fare un reshape di questa matrice:
[[[ 1 16 31]
  [ 2 17 32]
  [ 3 18 33]
  [ 4 19 34]
  [ 5 20 35]]

 [[ 6 21 36]
  [ 7 22 37]
  [ 8 23 38]
  [ 9 24 39]
  [10 25 40]]

 [[11 26 41]
  [12 27 42]
  [13 28 43]
  [14 29 44]
  [15 30 45]]]

in questa qui

[[[ 1  2  3  4  5]
 [ 6  7  8  9 10]
 [11 12 13 14 15]]
[[16 17 18 19 20]
 [21 22 23 24 25]
 [26 27 28 29 30]]
[[31 32 33 34 35]
 [36 37 38 39 40]
 [41 42 43 44 45]]]


Questo si è reso necessario, perchè, partendo dalle singole matrici bidimensionali
[[ 1  2  3  4  5]
 [ 6  7  8  9 10]
 [11 12 13 14 15]]
___
[[16 17 18 19 20]
 [21 22 23 24 25]
 [26 27 28 29 30]]
___
[[31 32 33 34 35]
 [36 37 38 39 40]
 [41 42 43 44 45]]


ed utilizzando il comando "np.dstack", mi genera la matrice in testa al topic piuttosto che quella che vorrei ottenere!

Offline lucajust

  • python unicellularis
  • *
  • Post: 22
  • Punti reputazione: 0
    • Mostra profilo
Re:Reshape 3d array
« Risposta #1 il: Maggio 25, 2018, 10:39 »
Se a qualcuno potesse interessare, ho risolto, usando il comando "np.einsum("ijk->kij", array)"

Offline bebo

  • python erectus
  • ***
  • Post: 195
  • Punti reputazione: 0
    • Mostra profilo
    • bebo_sudo's personal homepage
Re:Reshape 3d array
« Risposta #2 il: Maggio 25, 2018, 10:52 »
Anziche' usare dstack e poi trasformarlo, hai provato a guardare le altre funzioni stack, vstack, hstack?