Numpy中array的where使用

本文介绍如何使用NumPy中的np.where函数对数组元素进行条件判断并根据条件设置新值。通过一个具体的例子展示了如何将随机生成的矩阵中大于0的元素设置为2,小于等于0的元素设置为-2。

如果想对array的值进行判断,符合条件就设值为X,不符合就设值为Y,可采用np.where(条件,x,y)  

其中 x,y不必是数组,都可以是标量值

假设现在有个随机array,把正数替换为2,负数替换为1:

[python]  view plain  copy
  1. arr=randn(4,4)  
  2. arr  
  3. Out[45]:   
  4. matrix([[-0.76576543, -0.6970707 ,  0.05075991,  0.5264227 ],  
  5.         [ 1.52110163,  0.93467576,  1.27428214, -2.12140495],  
  6.         [ 0.00761238,  0.53464663, -2.20040176,  0.49967221],  
  7.         [-1.00297207,  0.41399644,  0.46360027,  0.01037172]])  
  8. np.where(arr>0,2,-2)  
  9. Out[46]:   
  10. array([[-2, -2,  2,  2],  
  11.        [ 2,  2,  2, -2],  
  12.        [ 2,  2, -2,  2],  
  13.        [-2,  2,  2,  2]])  
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值