logo

NumPy Ndarray

Ndarray е обект с n-измерен масив, дефиниран в numpy, който съхранява колекцията от подобен тип елементи. С други думи, можем да дефинираме ndarray като колекция от обекти от типа данни (dtype).

Обектът ndarray може да бъде достъпен чрез използване на базирано на 0 индексиране. Всеки елемент от обекта Array съдържа същия размер в паметта.

Създаване на обект ndarray

Обектът ndarray може да бъде създаден чрез използване на процедурата за масив на модула numpy. За тази цел трябва да импортираме numpy.

 >>> a = numpy.array 

Разгледайте изображението по-долу.

NumPy Ndarray

Можем също така да предадем обект на колекция в рутината за масив, за да създадем еквивалентен n-измерен масив. Синтаксисът е даден по-долу.

 >>> numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0) 

Параметрите са описани в следващата таблица.

SN Параметър Описание
1 обект Той представлява обекта на колекцията. Може да бъде списък, кортеж, речник, набор и т.н.
2 dtype Можем да променим типа данни на елементите на масива, като променим тази опция на посочения тип. По подразбиране няма.
3 копие Не е задължително. По подразбиране е true, което означава, че обектът е копиран.
4 поръчка Може да има 3 възможни стойности, присвоени на тази опция. Може да бъде C (ред на колони), R (ред на редове) или A (всяка)
5 тестван Върнатият масив ще бъде масив от базов клас по подразбиране. Можем да променим това, за да направим преминаването на подкласовете, като зададем тази опция на true.
6 ndmin Той представлява минималните размери на резултантния масив.

За да създадете масив с помощта на списъка, използвайте следния синтаксис.

 >>> a = numpy.array([1, 2, 3]) 
NumPy Ndarray

За да създадете обект с многоизмерен масив, използвайте следния синтаксис.

 >>> a = numpy.array([[1, 2, 3], [4, 5, 6]]) 
NumPy Ndarray

За да промените типа данни на елементите на масива, споменете името на типа данни заедно с колекцията.

чертане на правоъгълник на gimp
 >>> a = numpy.array([1, 3, 5, 7], complex) 
NumPy Ndarray

Намиране на размерите на масива

The аз съм може да се използва за намиране на размерите на масива.

 >>> import numpy as np >>> arr = np.array([[1, 2, 3, 4], [4, 5, 6, 7], [9, 10, 11, 23]]) >>> print(arr.ndim) 
NumPy Ndarray

Намиране на размера на всеки елемент от масива

Функцията itemsize се използва за получаване на размера на всеки елемент от масива. Връща броя байтове, взети от всеки елемент на масива.

Помислете за следния пример.

Пример

 #finding the size of each item in the array import numpy as np a = np.array([[1,2,3]]) print('Each item contains',a.itemsize,'bytes') 

Изход:

 Each item contains 8 bytes. 

Намиране на типа данни на всеки елемент от масива

За да проверите типа данни на всеки елемент от масива, се използва функцията dtype. Разгледайте следния пример, за да проверите типа данни на елементите на масива.

Пример

 #finding the data type of each array item import numpy as np a = np.array([[1,2,3]]) print('Each item is of the type',a.dtype) 

Изход:

 Each item is of the type int64 

Намиране на формата и размера на масива

За да получите формата и размера на масива, се използва функцията за размер и форма, свързана с масива numpy.

Помислете за следния пример.

tostring java

Пример

 import numpy as np a = np.array([[1,2,3,4,5,6,7]]) print('Array Size:',a.size) print('Shape:',a.shape) 

Изход:

 Array Size: 7 Shape: (1, 7) 

Преоформяне на масивните обекти

Под формата на масива имаме предвид броя на редовете и колоните на многомерен масив. Модулът numpy обаче ни предоставя начин да променим формата на масива, като променим броя на редовете и колоните на многоизмерния масив.

Функцията reshape(), свързана с обекта ndarray, се използва за преоформяне на масива. Той приема двата параметъра, указващи реда и колоните на новата форма на масива.

Нека преоформим масива, даден в следното изображение.

NumPy Ndarray

Пример

 import numpy as np a = np.array([[1,2],[3,4],[5,6]]) print('printing the original array..') print(a) a=a.reshape(2,3) print('printing the reshaped array..') print(a) 

Изход:

 printing the original array.. [[1 2] [3 4] [5 6]] printing the reshaped array.. [[1 2 3] [4 5 6]] 

Нарязване в масива

Нарязването в масива NumPy е начинът за извличане на набор от елементи от масив. Нарязването в масива се извършва по същия начин, както се извършва в списъка на Python.

Разгледайте следния пример, за да отпечатате определен елемент от масива.

Пример

 import numpy as np a = np.array([[1,2],[3,4],[5,6]]) print(a[0,1]) print(a[2,0]) 

Изход:

 2 5 

Горната програма отпечатва 2ndелемент от 0thиндекс и 0thелемент от 2ndиндекс на масива.

Linspace

Функцията linspace() връща равномерно разпределените стойности за дадения интервал. Следващият пример връща 10-те равномерно разделени стойности за дадения интервал 5-15

Пример

 import numpy as np a=np.linspace(5,15,10) #prints 10 values which are evenly spaced over the given interval 5-15 print(a) 

Изход:

 [ 5. 6.11111111 7.22222222 8.33333333 9.44444444 10.55555556 11.66666667 12.77777778 13.88888889 15. ] 

Намиране на максимума, минимума и сумата на елементите на масива

NumPy предоставя функциите max(), min() и sum(), които се използват съответно за намиране на максимума, минимума и сумата на елементите на масива.

foreach цикличен шрифт

Помислете за следния пример.

Пример

 import numpy as np a = np.array([1,2,3,10,15,4]) print('The array:',a) print('The maximum element:',a.max()) print('The minimum element:',a.min()) print('The sum of the elements:',a.sum()) 

Изход:

 The array: [ 1 2 3 10 15 4] The maximum element: 15 The minimum element: 1 The sum of the elements: 35 

Ос на масив NumPy

Многоизмерният масив на NumPy е представен от оста, където ос-0 представлява колоните, а ос-1 представлява редовете. Можем да споменем оста за извършване на изчисления на ниво ред или колона като добавяне на елементи на ред или колона.

какво е великденското яйце на android
NumPy Ndarray

За да изчислите максималния елемент сред всяка колона, минималния елемент сред всеки ред и добавянето на всички елементи на реда, разгледайте следния пример.

Пример

 import numpy as np a = np.array([[1,2,30],[10,15,4]]) print('The array:',a) print('The maximum elements of columns:',a.max(axis = 0)) print('The minimum element of rows',a.min(axis = 1)) print('The sum of all rows',a.sum(axis = 1)) 

Изход:

 The array: [[1 2 30] [10 15 4]] The maximum elements of columns: [10 15 30] The minimum element of rows [1 4] The sum of all rows [33 29] 

Намиране на квадратен корен и стандартно отклонение

Функциите sqrt() и std(), свързани с масива numpy, се използват съответно за намиране на корен квадратен и стандартно отклонение на елементите на масива.

Стандартното отклонение означава колко всеки елемент от масива варира от средната стойност на масива numpy.

Помислете за следния пример.

Пример

 import numpy as np a = np.array([[1,2,30],[10,15,4]]) print(np.sqrt(a)) print(np.std(a)) 

Изход:

 [[1. 1.41421356 5.47722558] [3.16227766 3.87298335 2. ]] 10.044346115546242 

Аритметични операции върху масива

Модулът numpy ни позволява да извършваме директно аритметичните операции върху многомерни масиви.

В следващия пример аритметичните операции се извършват върху двата многомерни масива a и b.

Пример

 import numpy as np a = np.array([[1,2,30],[10,15,4]]) b = np.array([[1,2,3],[12, 19, 29]]) print('Sum of array a and b
',a+b) print('Product of array a and b
',a*b) print('Division of array a and b
',a/b) 

Конкатенация на масив

numpy ни предоставя вертикално подреждане и хоризонтално подреждане, което ни позволява да свържем два многоизмерни масива вертикално или хоризонтално.

Помислете за следния пример.

Пример

 import numpy as np a = np.array([[1,2,30],[10,15,4]]) b = np.array([[1,2,3],[12, 19, 29]]) print('Arrays vertically concatenated
',np.vstack((a,b))); print('Arrays horizontally concatenated
',np.hstack((a,b))) 

Изход:

 Arrays vertically concatenated [[ 1 2 30] [10 15 4] [ 1 2 3] [12 19 29]] Arrays horizontally concatenated [[ 1 2 30 1 2 3] [10 15 4 12 19 29]]