Sto cercando di indicizzare un numero numpy.array con dimensioni diverse durante il runtime. Per recuperare ad es. la prima riga di un * m matrice a
, si può semplicemente fareIndicizzazione di matrice numpy.array unidimensionale come matrice
a[0,:]
Tuttavia, nel caso in cui un sembra essere un vettore 1xn, questo codice precedente restituisce un errore di indice:
IndexError: too many indices
Poiché il codice deve essere eseguito nel modo più efficiente possibile, non desidero introdurre un'istruzione if
. Qualcuno ha una soluzione conveniente che idealmente non comporta la modifica di qualsiasi tipo di struttura dei dati?
Si dispone solo di array 1 e 2D? – Paul
Semplicemente rimodellando l'array in modo che fosse un array 1xd 2n invece di un conteggio array di lunghezza 1d come "modifica del tipo di struttura dati"? –
Tutti questi sono array 2D (mxn) in teoria, alcuni sono semplicemente diventati array 1xn, ad es. m = 1. Infatti rappresentano tabelle di probabilità condizionale e il caso m = 1 corrisponde a una variabile che non ha alcuna dipendenza. – Alain