Функцията concatenate() е функция от пакета NumPy. Тази функция по същество комбинира NumPy масиви заедно. Тази функция основно се използва за свързване на два или повече масива с еднаква форма по определена ос. Има следните неща, които е важно да имате предвид:
- Concatenate() на NumPy не е като традиционно присъединяване към база данни. Това е като подреждане на масиви NumPy.
- Тази функция може да работи както вертикално, така и хоризонтално. Това означава, че можем да свързваме масиви заедно хоризонтално или вертикално.
Функцията concatenate() обикновено се записва като np.concatenate(), но можем да я напишем и като numpy.concatenate(). Зависи от начина на импортиране на пакета numpy, съответно импортиране на numpy като np или импортиране на numpy.
Синтаксис
numpy.concatenate((a1, a2, ...), axis)
Параметри
1) (a1, a2, ...)
Този параметър определя последователността от масиви. Тук a1, a2, a3 ... са масивите, които имат еднаква форма, с изключение на размерите, съответстващи на оста.
низ в c++
2) ос: int (по избор)
Този параметър определя оста, по която ще бъде съединен масивът. По подразбиране стойността му е 0.
Резултат
Той ще върне ndarray, съдържащ елементите и на двата масива.
викас дивякирти
Пример 1: numpy.concatenate()
import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y)) z
В горния код
- Импортирахме numpy с псевдоним np.
- Създадохме масив 'x' с помощта на функцията np.array().
- След това създадохме друг масив 'y', използвайки същата функция np.array().
- Декларирахме променливата 'z' и присвоихме върнатата стойност на функцията np.concatenate().
- Предадохме масива 'x' и 'y' във функцията.
- Накрая се опитахме да отпечатаме стойността на 'z'.
В изхода стойностите на двата масива, т.е. „x“ и „y“, показани по оста=0.
Изход:
array([[ 1, 2], [ 3, 4], [12, 30]])
Пример 2: numpy.concatenate() с axis=0
import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=0) z
Изход:
array([[ 1, 2], [ 3, 4], [12, 30]])
Пример 3: numpy.concatenate() с axis=1
import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y.T), axis=1) z
Изход:
abs c код
array([[ 1, 2, 12], [ 3, 4, 30]])
В горния пример '.T' се използва за промяна на редовете в колони и колоните в редове.
Пример 4: numpy.concatenate() с axis=None
import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=None) z
Изход:
примери за програмиране на python
array([ 1, 2, 3, 4, 12, 30])
В горните примери използвахме функцията np.concatenate(). Тази функция не е запазено маскиране на входове MaskedArray. Има следния начин, чрез който можем да свържем масивите, които могат да запазят маскирането на входовете MaskedArray.
Пример 5: np.ma.concatenate()
import numpy as np x=np.ma.arange(3) y=np.arange(3,6) x[1]=np.ma.masked x y z1=np.concatenate([x,y]) z2=np.ma.concatenate([x,y]) z1 z2
В горния код
- Импортирахме numpy с псевдоним np.
- Създадохме масив 'x' с помощта на функцията np.ma.arrange().
- След това създадохме друг масив 'y', използвайки същата функция np.ma.arrange().
- Декларирахме променливата 'z1' и присвоихме върнатата стойност на функцията np.concatenate().
- Декларирахме променлива 'z2' и присвоихме върнатата стойност на функцията np.ma.concatenate().
- Накрая се опитахме да отпечатаме стойността на 'z1' и 'z2'.
В изхода стойностите на двата масива „z1“ и „z2“ са запазили маскирането на входа MaskedArray.
Изход:
masked_array(data=[0, --, 2], mask=[False, True, False], fill_value=999999) array([3, 4, 5]) masked_array(data=[0, 1, 2, 3, 4, 5], mask=False, fill_value=999999) masked_array(data=[0, --, 2, 3, 4, 5], mask=[False, True, False, False, False, False], fill_value=999999)