对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定时器使用示例分享
Feb 16 Python
python引入导入自定义模块和外部文件的实例
Jul 24 Python
Python向MySQL批量插数据的实例讲解
Mar 31 Python
解决python matplotlib imshow无法显示的问题
May 24 Python
Python双向循环链表实现方法分析
Jul 30 Python
Python重新加载模块的实现方法
Oct 16 Python
numpy按列连接两个维数不同的数组方式
Dec 06 Python
PyCharm下载和安装详细步骤
Dec 17 Python
python和go语言的区别是什么
Jul 20 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
Sep 03 Python
python logging模块的使用详解
Oct 23 Python
用基于python的appium爬取b站直播消费记录
Apr 17 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
使用phpQuery采集网页的方法
2013/11/13 PHP
thinkphp微信开发(消息加密解密)
2015/12/02 PHP
Laravel模糊查询区分大小写的实例
2019/09/29 PHP
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
JavaScript中数组的排序、乱序和搜索实现代码
2011/11/30 Javascript
解决Extjs上传图片无法预览的解决方法
2012/03/22 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
jquery实现tr元素的上下移动示例代码
2013/12/20 Javascript
JS判断两个时间大小的示例代码
2014/01/28 Javascript
Node.js安装教程和NPM包管理器使用详解
2014/08/16 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
avalonjs制作响应式瀑布流特效
2015/05/06 Javascript
jQuery 常见小例汇总
2016/12/14 Javascript
微信小程序使用modal组件弹出对话框功能示例
2017/11/29 Javascript
JavaScript解决浮点数计算不准确问题的方法分析
2018/07/09 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
2019/05/23 jQuery
vue 添加和编辑用同一个表单,el-form表单提交后清空表单数据操作
2020/08/03 Javascript
用python读写excel的方法
2014/11/18 Python
python3 shelve模块的详解
2017/07/08 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
Python给图像添加噪声具体操作
2019/03/03 Python
DataFrame.to_excel多次写入不同Sheet的实例
2019/12/02 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
Python2及Python3如何实现兼容切换
2020/09/01 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
HTML5在canvas中绘制复杂形状附效果截图
2014/06/23 HTML / CSS
Clarisonic美国官网:科莱丽声波洁面仪
2017/10/12 全球购物
《这儿真好》教学反思
2014/02/22 职场文书
报关员个人职业生涯规划书
2014/03/12 职场文书
12.4法制宣传日标语
2014/10/08 职场文书
2016班级元旦联欢会开幕词
2016/03/04 职场文书
《女娲补天》读后感5篇
2019/12/31 职场文书
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android