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使用htpasswd实现基本认证授权的例子
Jun 10 Python
解决Python中由于logging模块误用导致的内存泄露
Apr 23 Python
Python实现好友全头像的拼接实例(推荐)
Jun 24 Python
解决phantomjs截图失败,phantom.exit位置的问题
May 17 Python
在Python中增加和插入元素的示例
Nov 01 Python
如何使用Python实现斐波那契数列
Jul 02 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
Aug 19 Python
python程序中的线程操作 concurrent模块使用详解
Sep 23 Python
Django视图扩展类知识点详解
Oct 25 Python
python实现根据文件格式分类
Oct 31 Python
python 画图 图例自由定义方式
Apr 17 Python
浅析python字符串前加r、f、u、l 的区别
Jan 24 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
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/29 PHP
php多功能图片处理类分享(php图片缩放类)
2014/03/14 PHP
使用ThinkPHP+Uploadify实现图片上传功能
2014/06/26 PHP
PHPExcel内存泄漏问题解决方法
2015/01/23 PHP
PHP数组和explode函数示例总结
2015/05/08 PHP
php抓取网站图片并保存的实现方法
2015/10/29 PHP
AJAX的使用方法详解
2017/04/29 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
jquery实现滑动图片自己测试的例子
2013/11/05 Javascript
js 删除数组的几种方法小结
2014/02/21 Javascript
jquery checkbox 勾选的bug问题解决方案与分析
2014/11/13 Javascript
全面解析JavaScript的Backbone.js框架中的Router路由
2016/05/05 Javascript
javascript实现瀑布流动态加载图片原理
2016/08/12 Javascript
AngularJS过滤器filter用法实例分析
2016/11/04 Javascript
JavaScript中在光标处插入添加文本标签节点的详细方法
2017/03/22 Javascript
AngularJS前端页面操作之用户修改密码功能示例
2017/03/27 Javascript
Node.js连接mongodb实例代码
2017/06/06 Javascript
jQuery实现回到顶部效果
2020/10/19 jQuery
[08:17]Ti9 现场cosplay
2019/09/10 DOTA
把django中admin后台界面的英文修改为中文显示的方法
2019/07/26 Python
python3中利用filter函数输出小于某个数的所有回文数实例
2019/11/24 Python
如何学习Python time模块
2020/06/03 Python
vscode配置anaconda3的方法步骤
2020/08/08 Python
Python3.8安装Pygame教程步骤详解
2020/08/14 Python
css3高级选择器使用方法
2013/12/02 HTML / CSS
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
怎样写演讲稿
2014/01/04 职场文书
满月酒答谢词
2014/01/14 职场文书
小学向国旗敬礼活动方案
2014/09/27 职场文书
2015年社区科普工作总结
2015/05/13 职场文书
立春观后感
2015/06/18 职场文书
人力资源部工作计划
2019/05/14 职场文书
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript
《原神》新角色演示“神里绫人:林隐泓洄” 宠妹狂魔
2022/04/03 其他游戏