你的问题是关于如何将一组具有额外维度的数组转换为具有较少维度的数组。你提供的例子中,你有一组一行矩阵,每个矩阵都包含一个数字,你希望将它们转换为单独的独立数组。
这个问题可以通过使用Python的Numpy库来解决。Numpy提供了一个函数
numpy.squeeze,它可以从数组的形状中移除一维条目。以下是如何使用它的一个例子:
- import numpy as np
- # 创建原始数组
- arr = np.array([[[123]], [[456]], [[789]]])
- # 使用squeeze移除额外的维度
- arr_squeezed = np.squeeze(arr, axis=1)
- # 打印结果
- print(arr_squeezed)
复制代码
在这个例子中,
axis=1参数告诉
numpy.squeeze函数移除第二个维度(在Python中,索引是从0开始的,所以第二个维度的索引是1)。
运行上述代码后,你将得到:
- [b][i][font=Trebuchet MS][size=3]`[/size][/font][/i][/b]
- 这是你期望的结果。请注意,结果数组的形状是(3, 1),而不是(3,),因为虽然我们从原始数组中移除了一个维度,但每个元素仍然是一个一维数组。如果你希望得到一个一维数组,你可以再次调用[b][i][font=Trebuchet MS][size=3]numpy.squeeze[/size][/font][/i][/b],这次不带参数:
复制代码python
arr_squeezed = np.squeeze(arr_squeezed)
array([123, 456, 789])
`