numpy nonzero与isnan
nonzero
直接看例子:
In [83]: x = np.array([[1,0,0], [0,2,0], [1,1,0]]) In [84]: x.shape
Out[84]: (3L, 3L)
# 3*3的array,维度为2 In [85]: x
Out[85]:
array([[1, 0, 0],
[0, 2, 0],
[1, 1, 0]]) In [86]: np.nonzero(x)
Out[86]: (array([0, 1, 2, 2], dtype=int64), array([0, 1, 0, 1], dtype=int64))
# 返回的是x中的不为0的元素坐标(坐标从每个array中选一个组成)
# 返回的tuple与x的维度相同,tuple中第一个元素选一个,第二个元素选对应的那个,形成了一个坐标:
# x[0,0], x[1,1], x[2,0], x[2,1] 这几个为非零
In [87]: x = x == 0 In [88]: x
Out[88]:
array([[False, True, True],
[ True, False, True],
[False, False, True]], dtype=bool) In [89]: np.nonzero(x)
Out[89]: (array([0, 0, 1, 1, 2], dtype=int64), array([1, 2, 0, 2, 2], dtype=int64))
# 看第一个元素x[0,1]是True,意味着false在这个函数这为0
isnan:
In [90]: y = [np.log(-1.),1.,np.log(0)]
E:\Anaconda2\Scripts\ipython-script.py:1: RuntimeWarning: invalid value encountered in log
if __name__ == '__main__':
E:\Anaconda2\Scripts\ipython-script.py:1: RuntimeWarning: divide by zero encountered in log
if __name__ == '__main__': In [91]: y
Out[91]: [nan, 1.0, -inf] In [92]: np.isnan(y)
Out[92]: array([ True, False, False], dtype=bool)
# 可以看到isnan返回的是数组对应的相同大小的布尔型数组
numpy nonzero与isnan的更多相关文章
- [Python] numpy.nonzero
numpy.nonzero(a) Return the indices of the elements that are non-zero. Returns a tuple of arrays, on ...
- Python 关于数组矩阵变换函数numpy.nonzero(),numpy.multiply()用法
1.numpy.nonzero(condition),返回参数condition(为数组或者矩阵)中非0元素的索引所形成的ndarray数组,同时也可以返回condition中布尔值为True的值索引 ...
- Python中Numpy.nonzero()函数
Numpy.nonzero()返回的是数组中,非零元素的位置.如果是二维数组就是描述非零元素在几行几列,三维数组则是描述非零元素在第几组中的第几行第几列. 举例如下: 二维数组: a = np.arr ...
- Python之Numpy详细教程
NumPy - 简介 NumPy 是一个 Python 包. 它代表 “Numeric Python”. 它是一个由多维数组对象和用于处理数组的例程集合组成的库. Numeric,即 NumPy 的前 ...
- [Pandas] 02 - Tutorial of NumPy
Ref: NumPy 教程 这里主要是查缺补漏一些常用方法. 初步认识 矩阵常见知识点 矩阵操作 Ref: [Python] 01 - Number and Matrix[总结过一部分] 一.矩阵 ( ...
- numpy教程:排序、搜索和计数
http://blog.csdn.net/pipisorry/article/details/51822775 numpy排序.搜索和计数函数和方法.(重新整合过的) ],, , ], [, , ]] ...
- 小白眼中的AI之~Numpy基础
周末码一文,明天见矩阵- 其实Numpy之类的单讲特别没意思,但不稍微说下后面说实际应用又不行,所以大家就练练手吧 代码裤子: https://github.com/lotapp/BaseCode ...
- 006 numpy常用函数
属于Numpy的函数. 一:通用函数 1.说明 是一种对ndarray中的数据执行元素级运算的函数. 2.一元函数 3.二元函数 二:矢量计算 1.numpy.where 主要有两种用法 np.whe ...
- numpy.where() 用法详解
numpy.where (condition[, x, y]) numpy.where() 有两种用法: 1. np.where(condition, x, y) 满足条件(condition),输出 ...
随机推荐
- 查看java进程的所有信息
查看java 进程下的所有信息 ll /proc/pid/fd ru:ll /proc/24047/fd
- JavaScript深入理解sort()方法
一. 基本用法 let arr1 = [3, 5, 7, 1, 8, 7, 10, 20, 19] console.log(arr1.sort()) // [1, 10, 19, 20, 3, 5, ...
- JavaWeb 之文件上传
1. 文件上传的要求 1.1 上传对表单的限制 method="post"; enctype="multipart/form-data"; 表单中需要添加文件表 ...
- do while 宏定义如何使用?
#define verification(lhs,rhs,str) do { \ if (lhs == rhs) { \ std::cout << rang::style::bold &l ...
- JS上传图片预览及图片限制
HTML代码: <form action="__SELF__" method="post" enctype='multipart/form-data'&g ...
- nodejs koa2 获取get值和post值,提交表单
// 获取get值 router.get('/b', async(ctx, next) => { ctx.state = { title: 'Koa2', name: '小明-list' } l ...
- 图像分割之mean shift
阅读目的:理解quick shift,同时理解mean shift原理,mean shift用于图像聚类,优点是不需要指定聚类中心个数,缺点是计算量太大(原因). mean shift主要用来寻找符合 ...
- java bio 之聊天室
最近在复习java io相关知识 ,发现很多细节之前没学习到位,原理也没吃透,只能感叹本人愚钝. 复习到bio,顺手写了个简单的聊天室功能,并和大家分享下. 服务端: package io.QQ聊天室 ...
- EXCEL 从网页复制的内容 单/多选框 在EXCEL删不掉 及 2007添加开发工具选项卡
从网页复制到Excel中的单选.多选框等,有时候删除时怎么都删不掉,很是恶心.这时候需要使用“开发工具”来删除.它是设计模式下的一种组件或者说控件. Excel 2007 的可以用下图方式按delet ...
- CSS清除浮动使父级元素展开的三个方法
点评:一个没有设置高度的容器div内如果存在浮动元素(即使用了属性float:left或者float:right),那么该父级元素会无法展开,下面举个例子为大家详细介绍下,希望对大家有所帮助 一个没有 ...