python - 在Python中根据另一个数组中的索引创建一个数组
问题描述
我有一个这样的数组:
X= [[1,2,3],
[3,2,1],
[2,1,3]]
现在我想创建另一个数组 Y。Y 中的元素应该在 X 中的元素等于 2 的位置取值 1,否则它们应该取值 0。在这个例子中,Y 应该等于
Y=[[0,1,0],
[0,1,0],
[1,0,0]]
解决方案
使用以下命令将极大地促进(并加快速度)numpy
:
import numpy as np
Y = (np.array(X) == 2).astype(int)
>>> Y
array([[0, 1, 0],
[0, 1, 0],
[1, 0, 0]])
推荐阅读
- arrays - 在 VBA 中,尝试使用范围内的输入搜索数组
- sql - 截断在 MySQL 中不起作用
- windows-subsystem-for-linux - 如何让 Windows 10 终端启动 WSL?
- angularjs - 选择 2 标签未使用 Angularjs 更改
- php - 如何从两个表构建 sql 查询?
- reactjs - 当返回相同的数据集时,为什么我的 WatchQuery 订阅不会触发?
- c# - 使用 .Contains 比较多个字符串
- ios - 选择行其他部分在 UITableview 中包含相同的值?
- c++ - 当程序以root身份运行时在运行时切换用户
- android - 无法使用改造从多个按钮上传多个图像