1、np.append()
1.1、语法
将值添加到数组的末端,返回一个新的数组,而原数组不变。
numpy.append(arr, values, axis=None)
参数 | 描述 |
---|---|
arr : 类数组 | 输入的数组 |
values : 类数组 | 向数组 arr 添加的元素,需要与 arr 维度相同 |
axis : 整型 | 添加操作的方向轴,axis 取 0 表示沿竖直方向操作,axis 取 1 表示沿水平方向操作,若未提供 axis 值,在添加操作之前输入数组会被展开为一维数组 |
1.2、示例
arr = np.array([[1,2,3,4],[5,6,7,8]])
print('原数组:', arr)
>>> 原数组:[[ 1 2 3 4 ][ 5 6 7 8 ]]arr1 = np.append(arr,[[9,10],[11,12]])
print('直接添加元素:', arr1)
>>> 直接添加元素: [ 1 2 3 4 5 6 7 8 9 10 11 12 ]arr2 = np.append(arr,[[9,10,11,12],[11,11,11,11]], axis=0)
print('沿轴 0 添加元素:', arr2)
>>> 沿轴 0 添加元素: [[ 1 2 3 4 ][ 5 6 7 8 ][ 9 10 11 12][ 11 11 11 11]]arr3 = np.append(arr,[[9,10],[11,12]], axis=1)
print('沿轴 1 添加元素:', arr3)
>>> 沿轴 1 添加元素: [[ 1 2 3 4 9 10][ 5 6 7 8 11 12]]
2、np.concatenate()
2.1、语法
拼接一系列数组。
numpy.concatenate((a1, a2, ...), axis=0, out=None, dtype=None, casting="same_kind")
参数 | 描述 |
---|---|
a1, a2, … : 数组序列 | 这些数组必须有相同的形状 |
axis : 整型 | 拼接时的坐标轴,其默认值为 0,若为 None,则数组在使用前会被展开。 |
out : | (可选参数)暂时不做讨论 |
dtype : | (可选参数)暂时不做讨论 |
casting : | (可选参数)暂时不做讨论 |
2.2、示例
示例1:一维数组
x = np.array([1, 2, 3])
print("x:", x)
>>> x: [1 2 3]y = np.array([4, 5, 6])
print("y:", y)
>>> y: [4 5 6]z = np.concatenate((x, y))
print("z:", z)
>>> z: [1 2 3 4 5 6]# --------------------------------------------------------x1 = np.array([[1], [2], [3]])
print("x1:", x1)
>>> x1: [[1][2][3]]y1 = np.array([[4], [5], [6]])
print("y1:", y1)
>>> y1: [[4][5][6]]z1 = np.concatenate((x1, y1))
print("z1:", z1)
>>> z1: [[1][2][3][4][5][6]]
示例2:二维数组
x = np.array([[1, 2], [3, 4]])
print("x:", x)
>>> x: [[1 2][3 4]]y = np.array([[5, 6], [7, 8]])
print("y:", y)
>>> y: [[5 6][7 8]]z = np.concatenate((x, y), axis=0)
print("z:", z)
>>> z: [[1 2][3 4][5 6][7 8]]z1 = np.concatenate((x, y), axis=1)
print("z1:", z1)
>>> z1: [[1 2 5 6][3 4 7 8]]