如何追加两个NumPy数组

如何追加两个NumPy数组

python中的两个数组可以用多种方式进行追加,下面将讨论所有可能的方式。

方法1:使用append()方法

该方法用于将数值追加到一个数组的末尾。

语法 :

numpy.append(array, values, axis = None)

参数 :

  • array:[array_like]输入数组。
  • values : [array_like]将被添加到Arr中的值。值应该是
    形成,因此arr[…,obj,…] = values。如果轴被定义了,数值可以是任何的
    形状,因为它在使用前会被压扁。

  • axis:我们想沿着这个轴插入数值。默认情况下,数组是扁平化的。

返回 :

一个数组的副本,其值被附加在所述对象的末尾,沿着给定的轴。

示例:

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Appending both arrays using Append method
array1 = numpy.append(array1, array2)
print(array1)

输出:

[ 1 2 3 4 5 6 7 8 9 10] 

方法2:使用concatenate()方法

连接方法 沿着现有的轴线连接一连串的数组。

语法 :

numpy.concatenate((arr1, arr2, ...), axis=0, out=None)

参数 :

  • arr1, arr2, … : [类似数组的序列] 数组必须具有相同的形状,除了在与轴对应的维度。
    • axis : [int, optional] 数组将沿着的轴线连接。如果axis为None,数组在使用前会被压扁。默认为0。
    • out : [ndarray, optional] 如果提供,则是放置结果的目的地。形状必须正确,与没有指定out参数的情况下concatenate返回的结果一致。

返回: [ndarray] 连接的数组。

示例:

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Appending both Arrays using concatenate() method.
array1 = numpy.concatenate([array1, array2])
print(array1)

输出:

[ 1 2 3 4 5 6 7 8 9 10]

方法3:使用stack()方法

堆栈方法 沿着一个新的轴连接一个数组序列。

语法 : numpy.stack(arrays, axis)

参数 :

  • arrays : [array_like] 相同形状的数组序列。
  • axis : [int] 结果数组中的轴,输入的数组沿着这个轴被堆叠。

返回: [stacked ndarray] 输入数组的叠加数组,它比输入数组多一个维度。

示例:

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Join a sequence of arrays along a new axis.
array1 = numpy.stack([array1, array2])
print(array1)

输出:

[[ 1 2 3 4 5]

[ 6 7 8 9 10]]

方法4:使用hstack()方法

hstack方法 将数组按水平方向(列)依次堆叠。

语法 : numpy.hstack(tup)

参数 :

  • tup : [sequence of ndarrays] 包含要堆叠的数组的元组。这些数组除了第二轴外,必须具有相同的形状。

返回: [stacked ndarray] 输入数组的叠加数组。

示例:

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Stack arrays in sequence horizontally (column wise).
array1 = numpy.hstack([array1, array2])
print(array1)

输出:

[ 1 2 3 4 5 6 7 8 9 10]

方法5:使用vstack()方法

vstack方法 将数组按顺序垂直堆叠(从行开始)。

语法 : numpy.vstack(tup)

参数 :

  • tup : [sequence of ndarrays] 包含要堆叠的数组的元组。这些数组除了第一个轴以外,必须具有相同的形状。

返回: [stacked ndarray] 输入数组的叠加数组。

示例:

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Stack arrays in sequence vertically (row wise).
array1 = numpy.vstack([array1, array2])
print(array1)

输出:

[[ 1 2 3 4 5]

[ 6 7 8 9 10]]

方法6:使用column_stack()方法

column_stack()方法 将数组作为列堆积到一个二维数组中。

语法: column_stack( array)

import numpy
 
 
array1 = numpy.array([1, 2, 3, 4, 5])
array2 = numpy.array([6, 7, 8, 9, 10])
 
# Stack 1-D arrays as columns into a 2-D array.
array1 = numpy.column_stack([array1, array2])
print(array1)

输出:

[[ 1  6]
[ 2  7]
[ 3  8]
[ 4  9]
[ 5 10]]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy 数组操作