Numpy中的mask的使用


Posted in Python onJuly 21, 2018

numpy中矩阵选取子集或者以条件选取子集,用mask是一种很好的方法

简单来说就是用bool类型的indice矩阵去选择,

mask = np.ones(X.shape[0], dtype=bool)
X[mask].shape
mask.shape
mask[indices[0]] = False
mask.shape
X[mask].shape
X[~mask].shape
(678, 2)
(678,)
(678,)
(675, 2)
(3, 2)

例如我们这里用来选取全部点中KNN选取的点以及所有剩余的点

from sklearn.neighbors import NearestNeighbors
nbrs = NearestNeighbors(10).fit(X)
_,indices = nbrs.kneighbors(X)
mask = np.ones(X.shape[0], dtype=bool)
mask[indices[0]] = False
plt.scatter(X[mask][:,0],X[mask][:,1],c='g')
plt.scatter(X[~mask][:,0],X[~mask][:,1],c='r')

Numpy中的mask的使用

带条件选择替换,比如我们需要将a矩阵内某条件的行置换为888剩余置换为999,可以直接用mask或者再用where一步搞定:

mask = np.ones(a.shape,dtype=bool) #np.ones_like(a,dtype=bool)
mask[indices] = False
a[~mask] = 999
a[mask] = 888
#############
np.where(mask, 888, 999)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符串转换成浮点数函数分享
Jul 24 Python
利用Django内置的认证视图实现用户密码重置功能详解
Nov 24 Python
Python使用pandas和xlsxwriter读写xlsx文件的方法示例
Apr 09 Python
在python下使用tensorflow判断是否存在文件夹的实例
Jun 10 Python
Python动态语言与鸭子类型详解
Jul 01 Python
Python笔记之facade模式
Nov 20 Python
QML用PathView实现轮播图
Jun 03 Python
Python如何在windows环境安装pip及rarfile
Jun 15 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
Python爬虫之爬取二手房信息
Apr 27 Python
Python提取PDF指定内容并生成新文件
Jun 09 Python
OpenCV实现常见的四种图像几何变换
Apr 01 Python
Flask框架使用DBUtils模块连接数据库操作示例
Jul 20 #Python
Flask框架WTForm表单用法示例
Jul 20 #Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 #Python
Python闭包函数定义与用法分析
Jul 20 #Python
Django rest framework工具包简单用法示例
Jul 20 #Python
Django 中使用流响应处理视频的方法
Jul 20 #Python
Python实现手写一个类似django的web框架示例
Jul 20 #Python
You might like
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
基于php和mysql的简单的dao类实现crud操作功能
2014/01/27 PHP
php简单获取目录列表的方法
2015/03/24 PHP
又十个超级有用的PHP代码片段
2015/09/24 PHP
[原创]图片分页查看
2006/08/28 Javascript
JavaScript 函数式编程的原理
2009/10/16 Javascript
使用jQuery实现验证上传图片的格式与大小
2014/12/03 Javascript
JS数组(Array)处理函数整理
2014/12/07 Javascript
js实现的二级横向菜单条实例
2015/08/22 Javascript
深入浅析JSON.parse()、JSON.stringify()和eval()的作用详解
2016/04/03 Javascript
javascript 定时器工作原理分析
2016/12/03 Javascript
React中的refs的使用教程
2018/02/13 Javascript
使用 Vue 实现一个虚拟列表的方法
2019/08/20 Javascript
vue2.0+SVG实现音乐播放圆形进度条组件
2019/09/21 Javascript
这样回答继承可能面试官更满意
2019/12/10 Javascript
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
2020/07/28 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
Python中bisect的用法
2014/09/23 Python
Python编程中的for循环语句学习教程
2015/10/14 Python
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
python中json格式数据输出的简单实现方法
2016/10/31 Python
python3使用scrapy生成csv文件代码示例
2017/12/28 Python
opencv python 图像轮廓/检测轮廓/绘制轮廓的方法
2019/07/03 Python
python通过链接抓取网站详解
2019/11/20 Python
Tensorflow与Keras自适应使用显存方式
2020/06/22 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
HTML5之SVG 2D入门3—文本与图像及渲染文本介绍
2013/01/30 HTML / CSS
HTML5中的Web Notification桌面右下角通知功能的实现
2018/04/19 HTML / CSS
采购文员岗位职责
2013/11/20 职场文书
省级四好少年事迹材料
2014/01/25 职场文书
珠宝店促销方案
2014/03/21 职场文书
学历公证书范本
2014/04/09 职场文书
希特勒的演讲稿
2014/05/23 职场文书
总经理人事任命书
2014/06/05 职场文书
财务负责人任命书
2014/06/06 职场文书
李强为自己工作观后感
2015/06/11 职场文书