/ / impone che le matrici all'interno dell'array n dimensionale abbiano le stesse dimensioni: python, python-2.7, python-3.x

forzare gli array all'interno di un array n dimensionale per avere la stessa dimensione: python, python-2.7, python-3.x

Sono un principiante in Python e ho bisogno di dare la stessa dimensione ai miei array all'interno del mio array n dimensionale (narray): Il mio array iniziale:

[array([  6.27963604e-04,   3.58836345e-04,   1.79418172e-04,
0.00000000e+00,   0.00000000e+00,   8.97090862e-05,
8.97090862e-05])],  [array([  4.64746103e-04,   4.35699472e-05,   2.90466315e-05,
4.35699472e-05,   8.71398944e-05,   1.45233157e-05,
0.00000000e+00,   1.45233157e-05,   0.00000000e+00,
1.45233157e-05])],  [array([  8.71113726e-04,   7.85430409e-05,   6.78326262e-05,
3.92715204e-05,   1.78506911e-05,   1.78506911e-05,
1.78506911e-05,   7.14027644e-06,   0.00000000e+00,
1.07104147e-05,   0.00000000e+00,   0.00000000e+00,
0.00000000e+00,   0.00000000e+00,   3.57013822e-06])]]

L'output che voglio: voglio ottenere n array con array che ha 7 elementi in ciascuno rimuovendo gli altri elementi e costringendo ogni array ad avere 7 come dimensione:

[array([  6.27963604e-04,   3.58836345e-04,   1.79418172e-04,
0.00000000e+00,   0.00000000e+00,   8.97090862e-05,
8.97090862e-05])],[array([  4.64746103e-04,   4.35699472e-05,   2.90466315e-05,
4.35699472e-05,   8.71398944e-05,   1.45233157e-05,
0.00000000e+00])], [array([  8.71113726e-04,   7.85430409e-05,   6.78326262e-05,
3.92715204e-05,   1.78506911e-05,   1.78506911e-05,
1.78506911e-05])]

Grazie ,

risposte:

0 per risposta № 1

Credo che tu abbia un elenco di array intorpiditi, in quel caso puoi usarlo lista di comprensione e affettare.

>>> import numpy as np
>>> narray = [np.arange(np.random.randint(7,10)) for i in range (5)]
[array([0, 1, 2, 3, 4, 5, 6, 7, 8]),
array([0, 1, 2, 3, 4, 5, 6, 7, 8]),
array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6, 7, 8])]

>>> clipped_arr = [a[:7] for a in narray]
[array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6]),
array([0, 1, 2, 3, 4, 5, 6])]