对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实现模拟按键,自动翻页看u17漫画
Mar 17 Python
Python将图片转换为字符画的方法
Jun 16 Python
Python编写一个优美的下载器
Apr 15 Python
Python 绘图库 Matplotlib 入门教程
Apr 19 Python
python-docx修改已存在的Word文档的表格的字体格式方法
May 08 Python
在Mac上删除自己安装的Python方法
Oct 29 Python
我就是这样学习Python中的列表
Jun 02 Python
利用PyQt中的QThread类实现多线程
Feb 18 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
Apr 12 Python
python 实现仿微信聊天时间格式化显示的代码
Apr 17 Python
PyTorch的torch.cat用法
Jun 28 Python
基于OpenCV的路面质量检测的实现
Nov 04 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
phpMyAdmin下载、安装和使用入门教程
2007/05/31 PHP
php url地址栏传中文乱码解决方法集合
2010/06/25 PHP
PHP中文分词的简单实现代码分享
2011/07/17 PHP
php简单开启gzip压缩方法(zlib.output_compression)
2013/04/13 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
3种方法轻松处理php开发中emoji表情的问题
2016/07/18 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
Yii 框架使用Forms操作详解
2020/05/18 PHP
jQuery 动画基础教程
2008/12/25 Javascript
jQuery 表单验证插件formValidation实现个性化错误提示
2009/06/23 Javascript
jquery中通过过滤器获取表单元素的实现代码
2011/07/05 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
探索Javascript中this的奥秘
2016/12/11 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
2017/03/30 Javascript
修改node.js默认的npm安装目录实例
2018/05/15 Javascript
js的对象与函数详解
2019/01/21 Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
2019/03/19 Javascript
浅谈Vue项目骨架屏注入实践
2019/08/05 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
es6数组的flat(),flatMap()函数用法实例分析
2020/04/18 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
linux环境下安装pyramid和新建项目的步骤
2013/11/27 Python
python实现文件名批量替换和内容替换
2014/03/20 Python
Python编程图形库之Pillow使用方法讲解
2018/12/28 Python
Python3.5 Pandas模块之Series用法实例分析
2019/04/23 Python
python和php哪个更适合写爬虫
2020/06/22 Python
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
2013/07/26 面试题
煤矿安全演讲稿
2014/05/09 职场文书
开工典礼策划方案
2014/05/23 职场文书
岗位工作说明书
2014/07/29 职场文书
2014年个人总结范文
2015/03/09 职场文书
基层组织建设年活动总结
2015/05/09 职场文书
儿童诗两首教学反思
2016/02/23 职场文书