NumPy(Numerical Python)是Python中用于科学计算的一个基础库,它提供了高性能的多维数组对象和一系列用于处理这些数组的工具。NumPy的数组称为ndarray(n-dimensional array),其中的1d数组即为一维数组。
NumPy数组有多种类型,包括整数、浮点数、布尔值等。可以通过numpy.dtype
来指定数组的数据类型。
NumPy广泛应用于数据分析、机器学习、图像处理等领域。
NumPy的1d数组本质上是向量,没有“列”的概念。如果你想要将一个1d数组转换为2d数组(即矩阵),可以将其重塑(reshape)或者与其他数组进行堆叠(stack)。
import numpy as np
# 创建一个1d数组
arr_1d = np.array([1, 2, 3, 4, 5])
# 将1d数组转换为2d数组(列向量)
arr_2d_col = arr_1d[:, np.newaxis]
print("列向量:\n", arr_2d_col)
# 或者创建一个新的1d数组作为列,然后使用vstack堆叠
new_col = np.array([6, 7, 8, 9, 10])
arr_2d_stacked = np.vstack((arr_1d, new_col))
print("堆叠后的2d数组:\n", arr_2d_stacked)
列向量:
[[1]
[2]
[3]
[4]
[5]]
堆叠后的2d数组:
[[ 1 6]
[ 2 7]
[ 3 8]
[ 4 9]
[ 5 10]]
如果你尝试直接向1d数组添加列,会遇到错误,因为1d数组没有列的概念。解决方法是将1d数组转换为2d数组,如上例所示。
通过上述方法,你可以将1d数组转换为2d数组,并在此基础上进行列的操作。
领取专属 10元无门槛券
手把手带您无忧上云