📜  向 numpy 数组添加新列 - Python (1)

📅  最后修改于: 2023-12-03 15:37:10.946000             🧑  作者: Mango

向 numpy 数组添加新列 - Python

在使用 NumPy 进行数据处理时,有时需要将新列添加到现有的 NumPy 数组中。本文将介绍如何使用 numpy.c_ 和 numpy.hstack 来添加新列。

使用 numpy.c_ 添加新列

numpy.c_ 用于连接切片对象,可以将两个切片对象沿其列轴连接。为了将新列添加到现有的 NumPy 数组中,我们可以将要添加的列转换为一个切片对象,然后将切片对象与原始数组连接。下面是一个例子:

import numpy as np

# 创建一个数组
x = np.array([[1, 2], [3, 4]])

# 创建要添加的新列
new_col = np.array([5, 6])

# 将新列转换为一个切片对象
new_col_slice = np.c_[new_col]

# 使用 numpy.c_ 将新列添加到原始数组中
result = np.c_[x, new_col_slice]

print(result)

该代码将输出:

array([[1, 2, 5],
       [3, 4, 6]])
使用 numpy.hstack 添加新列

numpy.hstack 用于沿着水平方向对数组进行堆叠。为了将新列添加到现有的 NumPy 数组中,我们可以使用 numpy.hstack 将新列和原始数组水平堆叠。下面是一个例子:

import numpy as np

# 创建一个数组
x = np.array([[1, 2], [3, 4]])

# 创建要添加的新列
new_col = np.array([5, 6]).reshape(-1, 1)

# 使用 numpy.hstack 将新列和原始数组水平堆叠
result = np.hstack((x, new_col))

print(result)

该代码将输出:

array([[1, 2, 5],
       [3, 4, 6]])

注意,在使用 numpy.hstack 添加新列时,我们需要将新列重塑为二维数组,以便能够沿着水平方向进行堆叠。

至此,我们已经介绍了如何使用 numpy.c_ 和 numpy.hstack 向 NumPy 数组添加新列。希望本文能够对你有所帮助!