Szukałem sposobu (bardziej wydajnego niż pisanie pętli do przechodzenia przez macierz), aby utworzyć macierze z elementów podanych w zapakowanej kolejności ukośnej, i wyodrębnić wartości z powrotem w ten porzadek. Na przykład, biorąc pod uwagę a = [2,3,4,5,6,7]
chciałbym móc wygenerowania ArrayZawijanie/rozpakowanie wektora wzdłuż przekątnych tablicy
[ 0, 2, 5, 7,
0, 0, 3, 6,
0, 0, 0, 4,
0, 0, 0, 0]
a także można ponownie ekstrahować a
z tablicy.
scipy.sparse.diags
osiąga coś takiego, ale jak sama nazwa wskazuje, jest przeznaczona do rzadkich tablic. Czy istnieje jakaś funkcjonalność w numpy, która zapewnia to, lub jakąś formę opartego na przekątowaniu indeksowania? A może jakiś rodzaj transformacji tablicowej, który uczyniłby to bardziej wykonalnym?
Czy to zamierzone, czy tablica jest tablicą 1d? – askewchan