对numpy中的where方法嵌套使用详解


Posted in Python onOctober 31, 2018

如同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.py

data 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方法嵌套使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python的Django框架中生成CSV文件的方法
Jul 22 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
Mar 20 Python
Python实现变量数值交换及判断数组是否含有某个元素的方法
Sep 18 Python
利用Python实现在同一网络中的本地文件共享方法
Jun 04 Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
Sanic框架基于类的视图用法示例
Jul 18 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
python socket 聊天室实例代码详解
Nov 14 Python
python 实现单通道转3通道
Dec 03 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
Feb 26 Python
Python使用Matlab命令过程解析
Jun 04 Python
Django+Django-Celery+Celery的整合实战
Jan 20 Python
在Python中使用defaultdict初始化字典以及应用方法
Oct 31 #Python
在ubuntu16.04中将python3设置为默认的命令写法
Oct 31 #Python
设置python3为默认python的方法
Oct 31 #Python
在双python下设置python3为默认的方法
Oct 31 #Python
利用Python将文本中的中英文分离方法
Oct 31 #Python
python list格式数据excel导出方法
Oct 31 #Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
Oct 31 #Python
You might like
基于mysql的论坛(5)
2006/10/09 PHP
使用openssl实现rsa非对称加密算法示例
2014/01/24 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
2014/05/04 PHP
Symfony2之session与cookie用法小结
2016/03/18 PHP
PHP页面输出搜索后跳转下一页的处理方法
2016/09/30 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
2017/05/20 PHP
PHP模版引擎原理、定义与用法实例
2019/03/29 PHP
javascript之更有效率的字符串替换
2008/08/02 Javascript
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
通过JS来判断页面控件是否获取焦点
2014/01/03 Javascript
JS获得图片alt信息的方法
2015/04/01 Javascript
js实现鼠标滑过文字链接色彩变化的效果
2015/05/06 Javascript
用JS动态改变表单form里的action值属性的两种方法
2016/05/25 Javascript
jquery获取easyui日期控件的值实现方法
2016/11/09 Javascript
详解react-router4 异步加载路由两种方法
2017/09/12 Javascript
使用cropper.js裁剪头像的实例代码
2017/09/29 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
vue实现节点增删改功能
2019/09/26 Javascript
node crawler如何添加promise支持
2020/02/01 Javascript
15分钟上手vue3.0(小结)
2020/05/20 Javascript
使用python实现接口的方法
2017/07/07 Python
python递归打印某个目录的内容(实例讲解)
2017/08/30 Python
基于Python代码编辑器的选用(详解)
2017/09/13 Python
浅谈python中的正则表达式(re模块)
2017/10/17 Python
python opencv检测目标颜色的实例讲解
2018/04/02 Python
Django集成CAS单点登录的方法示例
2019/06/10 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
Python yield的用法实例分析
2020/03/06 Python
HTML5拖拉上传文件的简单实例
2017/01/11 HTML / CSS
美国玩具公司:U.S.Toy
2018/05/19 全球购物
高级Java程序员面试题
2016/06/23 面试题
优秀应届生推荐信
2013/11/09 职场文书
师范应届毕业生自荐信
2013/11/18 职场文书
设计师求职信模板
2014/05/06 职场文书
同学会邀请函模板
2015/01/30 职场文书
使用tensorflow 实现反向传播求导
2021/05/26 Python