Cla*_*gen 5 python numpy cube multidimensional-array
我需要从 3D numpy 立方体中删除最后一个数组。我有:
a = np.array(
[[[1,2,3],
[4,5,6],
[7,8,9]],
[[9,8,7],
[6,5,4],
[3,2,1]],
[[0,0,0],
[0,0,0],
[0,0,0]],
[[0,0,0],
[0,0,0],
[0,0,0]]])
Run Code Online (Sandbox Code Playgroud)
如何使用零子数组(如立方体底部)删除数组np.delete?
(我不能简单地删除所有零值,因为顶部的数据中会有零)
对于 3D 立方体,您可以检查all最后两个轴
a = np.asarray(a)
a[~(a==0).all((2,1))]
Run Code Online (Sandbox Code Playgroud)
array([[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]],
[[9, 8, 7],
[6, 5, 4],
[3, 2, 1]]])
Run Code Online (Sandbox Code Playgroud)