python矩阵中找满足条件的元素_在python中检查矩阵中的元素

我有一个坐垫。如果它满足某个条件,我尝试用1替换它,如果不满足,我尝试用0替换它。for a in range(0,l):

for b in range(0,l):

if Matrix[a][b] == value:

Matrix[a][b] = 1

else:

Matrix[a][b] = 0

我的矩阵中充满了具有“价值”的元素。但它给我的输出是一个完全为0的矩阵

这在以前的一个类似的脚本中也起过作用。它可能和矩阵的结构有关吗?

下面是矩阵最初的样子--[ [0 1. 1. 2.]

[1. 0. 2. 1.]

[1. 2. 0. 1.]

[2. 1. 1. 0.]]

当我设置值=1时。我得到所有的1到1,所有的2到0。这就是我想要的。

但是,当我设置值=2时。我把一切都归零了。

当我做了所有的建议。[[ 0. 1. 1. 2. 1. 2. 2. 3.]

[ 1. 0. 2. 1. 2. 1. 3. 2.]

[ 1. 2. 0. 1. 2. 3. 1. 2.]

[ 2. 1. 1. 0. 3. 2. 2. 1.]

[ 1. 2. 2. 3. 0. 1. 1. 2.]

[ 2. 1. 3. 2. 1. 0. 2. 1.]

[ 2. 3. 1. 2. 1. 2. 0. 1.]

[ 3. 2. 2. 1. 2. 1. 1. 0.]]

>> np.where(matrix==2,1,0)

>> array([[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0],

[0, 0, 0, 0, 0, 0, 0, 0]])

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值