我需要从 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]]])
如何使用 np.delete
删除子数组为零的数组(例如立方体底部的数组)?
(我不能简单地删除所有零值,因为顶部的数据中会有零)
最佳答案
对于 3D 立方体,您可以根据最后两个轴检查全部
a = np.asarray(a)
a[~(a==0).all((2,1))]
<小时/>
array([[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]],
[[9, 8, 7],
[6, 5, 4],
[3, 2, 1]]])
关于python - 从 3d numpy 数组中删除 2d 切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58275589/