【numpy】numpy.where的使用
官方api介绍
几种用法
1. 仅输入condition
import numpy as npa = np.array([0,5,4,1,9,7])
b = np.where(a>5)
print(b)
结果如下
它的结果是非0元素在原数组中的下标
2. 仅输入数组
1D数组
在官方note中,已经注明,如果是仅仅输入condition;那么它的作用等同于
np.asarray(condition).nonzero()
如:
b = np.where([0,0,0,1,1,1,0,0,0])
print(b)
输出为:
2D数组
如果是2D,则返回为一个tuple,第一个值表示2D数组0维度的下标,第二个值表示2D数组1维度的下标
i = np.array([[False, False],[False, True],[True, True]])print(np.where(i))
3. 三参数输入,并且每个参数都是1D
它等同于
[xv if c else yv for c, xv, yv in zip(condition, x, y)]
如下面例子
import numpy as npa = np.arange(9)
b = np.where(a<5, a, 0)
print(b)
4. 三参数输入,并且每个参数是2D
如果是2D,则标识对应的元素从对应的True、False数组中获取
例如,
b = np.where([[True, False], [True, True]],[[1, 2], [3, 4]],[[9, 8], [7, 6]])
print(b)
结果如下,
解释一下
2D数组
[True, False], [True, True]
2行2列来标识:
[ True, False
True, True]
它标识结果中的True从第二个参数数组中获取,False从第三个参数数组中获取。
总结
1个参数输出的是下标;3个参数输出的是对应的数值
【numpy】numpy.where的使用相关推荐
- numpy numpy.concatenate()函数
@[TOC](numpy numpy.concatenate()函数)
- 玩转NumPy——NumPy数组的切片和索引
NumPy数组可以基于 0 ~n 的下标进行索引,切片对象可以通过内置的 slice 函数,并设置 start, stop 及 step 参数进行,从原数组中切割出一个新数组. eg: import ...
- NumPy————NumPy广播机制的学习笔记
1 致谢 感谢网友"FINTHON"的帮助, 原文链接如下: https://finthon.com/numpy-broadcast/ 2 前言 今天在学习K-means算法~ 想 ...
- Numpy——numpy的索引
文章目录 1.一维索引 2.二维索引 3.打印矩阵的行与列 4.打印矩阵中的每一个 1.一维索引 在元素列表或者数组中,我们可以用如同A[n]来索引某一个元素,同样的,在Numpy中也有相对应的表示方 ...
- Numpy——numpy的基本运算
文章目录 1.初始化两个矩阵 2.矩阵加法 3.矩阵减法 4.矩阵乘法 5.矩阵的乘方 6.矩阵的三角函数 7.矩阵的逻辑运算 8.二维矩阵计算 9.sum(), min(), max()的使用 10 ...
- Numpy——numpy属性
文章目录 1.列表转化为矩阵 2.numpy 的几种属性 3.创建数组 4.指定数据 dtype 5.创建特定数据 1.列表转化为矩阵 使用numpy首先要导入模块 import numpy as n ...
- numpy : numpy.random
随机抽样 (numpy.random) 简单的随机数据 rand(d0, d1, ..., dn) 随机值 >>> np.random.rand(3,2) array([[ 0.14 ...
- python安装镜像numpy_[Python]使用镜像网站自动、自动和手动安装numpy,Numpy
直接安装numpy模块 在cmd输入直接 pip install numpy 若出现报错:ou are using pip version 18.1, however version 20.2.2 i ...
- [Numpy] Numpy对于NaN值的判断
美图欣赏2022/06/23 numpy.nan的数据类型是float类型 import numpy as np type(np.nan) # float 任何数字和numpy.nan进行计算,返回的 ...
- 机器学习四剑客1——Numpy
求业之精,别无他法,日专而已矣! 一.概论 1.机器学习是什么 2.机器学习做什么 3.机器学习基本概念 二.机器学习第一步:数据分析 1.Python被大量应用在数据挖掘和深度学习领域: 2.其中使 ...
最新文章
- 如何删除windows上面的jdk文件
- 新雨个人面试经验总结
- Vue面试中经常会被问到的面试题
- mysql 评论回复表设计_【数据库】评论回复表设计
- android设备获取wifi和蓝牙状态并进行打开或关闭操作
- Vue移动端项目——搜索联想建议功能的实现(结合watch属性和使用lodash防抖节流)
- java 二叉树特点_二叉树的Java实现及特点总结
- 电脑投屏软件哪个好_电脑绘画软件哪个好?
- 数据结构笔记(二十三)--哈夫曼树
- python3中报错No module named 'numpy'
- 给神经网络加入先验知识!
- 思科模拟器完成实验报告
- Unity3D手游开发实践《腾讯桌球》客户端开发经验总结
- TFP与TFTP的联系与区别
- 联想y7000p怎么连接显示器_这一次,做中华良心想—联想Y7000P游戏本体验评测
- 【ChatGPT整活大赏】写论文后自动生成视频
- Taichi 加速 Python 中图像处理
- 无尽神域服务器维护,关于对无尽神域的感受亲爱的无尽神域开发团队:
- 阿木动态 | 助力机器人教育!一站式智能无人机专业课程建设方案!
- 全国首例微信三级分销被认定为传销,三级分销“身世”揭秘(上)
热门文章
- 什么品牌的游戏蓝牙耳机比较好?玩游戏延迟低的蓝牙耳机推荐
- 计算机毕业设计ssm缺陷管理系统d6ltf系统+程序+源码+lw+远程部署
- 高完整性系统(4)Formal Logic (形式逻辑和 Alloy 简介)
- HTML 表格跨行与跨列
- build文件下的build.js解释
- dhs手术是什么意思_手术技巧:微创DHS治疗股骨转子间骨折
- 图解!《养老机构服务安全基本规范》—养老第一项强制性国家标准
- 一个新开始的地方—魔都
- linux c文件路径,LINUX C编程中的文件路径
- python画猪猪侠_python的学习笔记/002-3(2018-5-20)