25
rozważyć szereg następującej postaci (tylko przykład):Zmiana kształtu tablicy w NumPy
[[ 0 1]
[ 2 3]
[ 4 5]
[ 6 7]
[ 8 9]
[10 11]
[12 13]
[14 15]
[16 17]]
To kształt [9,2]. Teraz chcemy przekształcić ten układ tak, że każda kolumna się kształt [3,3] w następujący sposób:
[[ 0 6 12]
[ 2 8 14]
[ 4 10 16]]
[[ 1 7 13]
[ 3 9 15]
[ 5 11 17]]
Najbardziej oczywiste (i zapewne „nie pythonic”), roztwór do zainicjowania tablicę zer z odpowiednim wymiarem i uruchom dwie pętle for, w których zostaną wypełnione danymi. Jestem zainteresowany rozwiązanie, które jest zgodne z języka ...
Zauważ, że 'B' teraz nie jest jednolity, co oznacza, że nie mogą być przekształcone w lokalu:' b.reshape (9, 2) ' zwraca kopię, a nie widok tych samych danych, a 'b.shape = (9, 2)' podniesie i wyświetli błąd. – Jaime
Bardzo ważny komentarz autorstwa @Jaime, ponieważ punktem kształtu jest optymistyczne zmienianie rozmiaru bez klona. Dużo do czynienia z ogromnymi zbiorami danych – deepelement