我想使用其他数组重塑一个数组。
假设我有array_1,其shape为(5, 1),例如:
>>> array_1
array([[ 0.33333333],
[ 0.36666667],
[ 0.16666667],
[ 0.06666667],
[ 0.06666667]]
Run Code Online (Sandbox Code Playgroud)
并且array_2,其形状为(1, 5)。我想重塑array_1形状,使其具有的形状array_2。array_2每当我运行代码时,的形状都会改变。
假设numpy数组,只需使用array_1.reshape(array_2.shape):
>>> import numpy as np
>>> arr1 = np.arange(5).reshape(5, 1)
>>> arr2 = np.arange(5, 10).reshape(1, 5)
>>> arr1
array([[0],
[1],
[2],
[3],
[4]])
>>> arr2
array([[5, 6, 7, 8, 9]])
>>> arr1.reshape(arr2.shape)
array([[0, 1, 2, 3, 4]])
>>> arr2.reshape(arr1.shape)
array([[5],
[6],
[7],
[8],
[9]])
Run Code Online (Sandbox Code Playgroud)
请注意,这不是就地;它会创建一个新数组,因此您需要分配例如array_1 = array_1.reshape(...)。
| 归档时间: |
|
| 查看次数: |
2068 次 |
| 最近记录: |