对numpy中的where方法嵌套使用详解
Python  /  管理员 发布于 5年前   313
如同for循环一样,numpy中的where方法可以实现嵌套功能。这是简化嵌套式矩阵逻辑的一个很好的方法。
假设有一个矩阵,需要把小于0的元素改成-1,大于0的元素改成1,而等于0的时候不做修改。
那么,对应的代码示范如下:
#!/usr/bin/python import numpy as np data = np.random.randn(4,5)data1 =np.where(data > 0,1,np.where(data <0,-1,0))print("datavalue:")print(data)print("data1value:")print(data1)
程序的执行结果如下:
In [3]: %runpython_exp04.pydata value:[[-2.06262429 0.94548656 -0.29458562 0.82657 -1.08587439] [-0.67416161 0.77247191 0.60330603 0.73694198 -0.63761278] [ 0.24887356 -0.27086027 0.34312363 0.727303 0.72741593] [-0.48973095 -0.33185631 -1.23341695 0.13569267 2.06881178]]data1 value:[[-1 1 -1 1-1] [-1 1 1 1 -1] [ 1 -1 1 1 1] [-1 -1 -1 1 1]]
这种用法,不仅比单纯通过复合的循环遍历实现的代码更加简洁,而且在执行效率上有着很大的优势。很多时候,计算的向量化就是为了能够加速整个程序的执行速度。
以上这篇对numpy中的where方法嵌套使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号