python - 如何根据 3D np 数组中的维度过滤/替换 >0 的值?
问题描述
我有一个 3D numpy 大小的数组,(260,311,260)
我想用 0 替换第一个维度中大于 0 的所有值(即保持维度)。这意味着将“立方体”的一半设置为 0。
到目前为止我已经尝试过
np.where(A[A>0,:,:],1,0)
和
A_x = A.T[(A[0]>0).any(axis=0).T].T
还有一个布尔掩码
bool_mask = (A> 0)
A[bool_mask == True]
但到目前为止没有任何效果。显然我可以写一个循环,但没有更优雅的方式吗?
先感谢您!
解决方案
推荐阅读
- c++ - 自动生成 cmake 到 .vcxproj 文件
- java - 我将如何创建一个需要每个课程与自己的主题一起去的课程列表?
- javascript - Uncaught (in promise) 是什么意思?
- tensorflow2.0 - Ray Tensorflow-gpu 2.0 RecursionError
- c++ - Horners Law需要代数帮助,显示错误答案c ++
- r - 使用 R 对 Sankey/Alluvial 图中的一些变量进行美化和排序
- json - 如何动态更改 Python API 调用中的参数
- html - 为不同的操作系统使用深度链接和不同的超链接(用户端)
- sql-server - 如何在 Amazon Linux AMI 中使用 pyodbc 连接到 RDS SQL 服务器?
- excel - 使用 excel vba 添加数据透视表