📅  最后修改于: 2023-12-03 15:34:18.820000             🧑  作者: Mango
在 numpy 中,我们可以使用以下方法来添加新的行列到一个数组中:
numpy.append(arr, values, axis=None)
: 将 values
数组添加到 arr
数组的结尾
numpy.insert(arr, obj, values, axis=None)
: 在 arr
数组的指定位置 obj
插入 values
数组
numpy.concatenate((arr1, arr2, ...), axis=0)
: 沿着指定的轴 axis
连接 arr1
, arr2
, ... 数组。
下面我们逐一介绍这三种方法的使用方法。
numpy.append(arr, values, axis=None)
使用 numpy.append()
方法向数组 arr
中添加新的 values
:
import numpy as np
# 创建一个 2x2 的数组
arr = np.array([[1, 2], [3, 4]])
# 添加新的一行 [5, 6] 到数组末尾
new_arr = np.append(arr, [[5, 6]], axis=0)
# 添加新的一列 [7, 8] 到数组末尾
new_arr = np.append(arr, [[7], [8]], axis=1)
print(new_arr)
# 输出:
# [[1 2 7]
# [3 4 8]]
在上面的示例中,我们使用了两次 numpy.append()
方法来添加新的行和列。其中,axis
参数指定了添加的方向。当 axis
参数为 None
时,会将 values
展开成一维数组,并添加到 arr
数组的末尾。
numpy.insert(arr, obj, values, axis=None)
使用 numpy.insert()
方法向数组 arr
中插入新的 values
:
import numpy as np
# 创建一个 2x2 的数组
arr = np.array([[1, 2], [3, 4]])
# 在第一行之前插入新的一行 [5, 6]
new_arr = np.insert(arr, 0, [5, 6], axis=0)
# 在第一列之前插入新的一列 [7, 8]
new_arr = np.insert(arr, 0, [7, 8], axis=1)
print(new_arr)
# 输出:
# [[7 1 2]
# [8 3 4]]
在上面的示例中,我们使用了两次 numpy.insert()
方法来插入新的行和列。其中,obj
参数指定了插入的位置。当 axis
参数为 None
时,会将 values
展开成一维数组,并插入到 arr
数组的指定位置。
numpy.concatenate((arr1, arr2, ...), axis=0)
使用 numpy.concatenate()
方法连接多个数组,组成一个新的大数组:
import numpy as np
# 创建两个 2x2 的数组
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
# 沿着行的方向连接 arr1 和 arr2 数组
new_arr = np.concatenate((arr1, arr2), axis=0)
# 沿着列的方向连接 arr1 和 arr2 数组
new_arr = np.concatenate((arr1, arr2), axis=1)
print(new_arr)
# 输出:
# [[1 2 5 6]
# [3 4 7 8]]
在上面的示例中,我们使用了 numpy.concatenate()
方法来连接 arr1
和 arr2
两个数组。其中,axis
参数指定了连接的方向。当 axis
参数为 None
时,会将多个数组沿着新的第一个维度进行连接。