NumPy Array Reshaping
tashin tashin abun
tashin tashin abun zai nufin yin kammala tashin abun.
tashin tashin abun yana da abun kowane dimen.
tashin tashin abun zai iya kida ko suna yin cikin dimen ko yin kammala abun kowane dimen.
sake kammala tasiyar 1-D zuwa 2-D
实例
sake kammala tasiyar tashin 1D wanda ya 12 abun da ke da cikin kowane dimen zuwa 2-D tashi.
matakan waje za a ciki da 4 tashi, kowane tashi yana da 3 abun:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(4, 3) print(newarr)
sake kammala tasiyar 1-D zuwa 3-D
实例
sake kammala tasiyar tashin 1D wanda ya 12 abun da ke da cikin kowane dimen zuwa 3-D tashi.
matakan waje za a ciki da 2 tashi, wanda kowane tashi yana da 3 tashi, kowane tashi yana da 2 abun:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(2, 3, 2) print(newarr)
muna amince, kamar yadda abubuwan da a ke nuna su a wadannan wuriyu sun dace da yadda ake so.
a ba a yiwa wadannan abubuwan ko a ba a yiwa wadannan abubuwan ba?
muna amince, kamar yadda abubuwan da a ke nuna su a wadannan wuriyu sun dace da yadda ake so.
实例
sake kammala tasiyar tashin 1D wanda ya 8 abun da ke da cikin kowane dimen, wanda zai haifar da ra'ayi:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(3, 3) print(newarr)
kuma kopi ko tashi ne ko wani tashi ne?
实例
cekki kalmannin kuma kopi ko wani tashi ne ko kuma tashi ne?
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) print(arr.reshap(2, 4).base)
上面的例子返回原始数组,因此它是一个视图。
未知的维
您可以使用一个“未知”维度。
这意味着您不必在 reshape 方法中为维度之一指定确切的数字。
传递 -1
作为值,NumPy 将为您计算该数字。
实例
将 8 个元素的 1D 数组转换为 2x2 元素的 3D 数组:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(2, 2, -1) print(newarr)
注释:我们不能将 -1
传递给一个以上的维度。
展平数组
展平数组(Flattening the arrays)是指将多维数组转换为 1D 数组。
我们可以使用 reshape(-1)
来做到这一点。
实例
把数组转换为 1D 数组:
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) newarr = arr.reshape(-1) print(newarr)
注释:有很多功能可以更改 numpy flatten、ravel 中数组形状,还可以重新排列元素 rot90、flip、fliplr、flipud 等。这些功能属于 numpy 的中级至高级部分。