python - 在numpy中,如何比较轴中的所有值
问题描述
对于 numpy 数组,只有当轴上的所有元素都等于另一个数组时,我才能更改值?例如...
array = np.array([[1, 0, 1],
[0, 0, 1],
[1, 1, 0],
[0, 0, 0],
[1, 0, 1]])
我想[1, 0, 1]
用[1, 1, 1]
... 替换所有内容,这样array
就变成了
array([[1, 1, 1],
[0, 0, 1],
[1, 1, 0],
[0, 0, 0],
[1, 1, 1]])
当我使用布尔数组时,它会检查每个单独的数字。我怎样才能一次比较整行呢?
解决方案
尝试:
array[(array == [1, 0, 1]).all(axis=1)] = [1, 1, 1]
推荐阅读
- lsh - 基于 LSH 等技术的语义文本相似性搜索与基于分布式语义的嵌入技术有何不同?
- oauth-2.0 - OAuth 2.0 - 资源服务器、授权服务器和资源所有者的角色
- java - 具有不同 UsernamePasswordAuthToken 的多个 AuthenticationProvider 来验证不同的登录表单而无需回退验证
- scikit-learn - t-SNE 使用推土机距离度量
- mysql - UPDATE的目标表TAD不可更新
- reactjs - react-scripts 变量未定义,但 webpack 工作正常
- angular - Angular 8:使用环境文件维护 API URL
- flutter - 使用 bloc 模式时如何在 ui 的流构建器中摆脱不必要的小部件重建
- c# - 如何通过 CloudQueue.GetMessagesAsync() 方法从 Azure 存储队列中获取和删除多条消息?
- angular - 如何在 tomcat webapps 子文件夹中部署 Angular 应用程序?