Функција нумпи.ресхапе() доступна је у пакету НумПи. Као што име каже, преобликовање значи 'промене облика'. Функција нумпи.ресхапе() нам помаже да добијемо нови облик у низу без промене његових података.
Понекад морамо да преобликујемо податке из широких у дугачке. Дакле, у овој ситуацији, морамо да преобликујемо низ помоћу функције ресхапе().
Синтакса
numpy.reshape(arr, new_shape, order='C')
Параметерс
Постоје следећи параметри функције ресхапе():
1) арр: арраи_лике
Ово је ндарраи. Ово је изворни низ који желимо да преобликујемо. Овај параметар је од суштинског значаја и игра виталну улогу у функцији нумпи.ресхапе().
функција стрелице куцаног писма
2) нев_схапе: инт или тупле оф интс
Облик у који желимо да конвертујемо наш оригинални низ треба да буде компатибилан са оригиналним низом. Ако је цео број, резултат ће бити 1-Д низ те дужине. Једна димензија облика може бити -1. Овде је вредност апроксимирана дужином низа и преосталим димензијама.
3) редослед: {'Ц', 'Ф', 'А'}, опционо
Параметар редоследа ових индекса игра кључну улогу у функцији ресхапе(). Ови редоследи индекса се користе за читање елемената изворног низа и постављање елемената у преобликовани низ користећи овај редослед индекса.
- Редослед индекса 'Ц' значи читање/записивање елемената који користе редослед индекса сличан Ц где се последњи индекс осе мења најбрже, назад на први индекс осе који се мења најспорије.
- Редослед индекса 'Ф' значи да се читају/уписују елементи који користе редослед индекса сличан Фортрану, где се последњи индекс осе мења најспорије, а први индекс осе најбрже.
- Редослед 'Ц' и 'Ф' не заузимају количину меморијског распореда основног низа и односе се само на редослед индексирања.
- Редослед индекса 'А' значи да се елементи читају/уписују у индексном редоследу сличном Фортрану, када је арр суседан у меморији, у супротном користите редослед налик Ц.
Повратак
Ова функција враћа ндарраи. То је нови објекат погледа ако је могуће; иначе ће то бити копија. Не постоји гаранција за распоред меморије враћеног низа.
Пример 1: Редослед индекса налик Ц
import numpy as np x=np.arange(12) y=np.reshape(x, (4,3)) x y
Излаз:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
У горњем коду
- Увезли смо нумпи са псеудонимом нп.
- Направили смо низ 'а' користећи функцију нп.арранге().
- Декларисали смо променљиву 'и' и доделили враћену вредност функције нп.ресхапе().
- Проследили смо низ 'к' и облик у функцију.
- На крају, покушали смо да одштампамо вредност арр.
У излазу, низ је представљен као три реда и четири колоне.
Пример 2: Еквивалентно Ц равел па Ц преобликовање
import numpy as np x=np.arange(12) y=np.reshape(np.ravel(x),(3,4)) x y
Функција равел() се користи за креирање суседног спљоштеног низа. Враћа се једнодимензионални низ који садржи елементе улаза. Копија се прави само када је потребна.
стринг методе јава
Излаз:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
Пример 3: Редослед индекса сличан Фортрану
import numpy as np x=np.arange(12) y=np.reshape(x, (4, 3), order='F') x y
Излаз:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 4, 8], [ 1, 5, 9], [ 2, 6, 10], [ 3, 7, 11]])
У горњем коду
- Увезли смо нумпи са псеудонимом нп.
- Направили смо низ 'а' користећи функцију нп.арранге().
- Декларисали смо променљиву 'и' и доделили враћену вредност функције нп.ресхапе().
- Проследили смо низ 'к' и облик и редослед индекса сличан Фортрану у функцији.
- На крају, покушали смо да одштампамо вредност арр.
У излазу, низ је представљен као четири реда и три колоне.
Пример 4: Редослед индекса сличан Фортрану
import numpy as np x=np.arange(12) y=np.reshape(np.ravel(x, order='F'), (4, 3), order='F') x y
Излаз:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 4, 8], [ 1, 5, 9], [ 2, 6, 10], [ 3, 7, 11]])
Пример 5: Претпоставља се да је неодређена вредност 2
import numpy as np x=np.arange(12) y=np.reshape(x, (2, -1)) x y
У горњем коду
- Увезли смо нумпи са псеудонимом нп.
- Направили смо низ 'а' користећи функцију нп.арранге().
- Декларисали смо променљиву 'и' и доделили враћену вредност функције нп.ресхапе().
- Проследили смо низ 'к' и облик (неодређену вредност) у функцију.
- На крају, покушали смо да одштампамо вредност арр.
У излазу, низ је представљен као два реда и пет колона.
Излаз:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) array([[ 0, 1, 2, 3, 4, 5], [ 6, 7, 8, 9, 10, 11]])