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编写生成树状结构的文件目录的脚本的教程
May 04 Python
python fabric使用笔记
May 09 Python
pycharm下查看python的变量类型和变量内容的方法
Jun 26 Python
解决Python print 输出文本显示 gbk 编码错误问题
Jul 13 Python
python requests 库请求带有文件参数的接口实例
Jan 03 Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 Python
简单了解python变量的作用域
Jul 30 Python
Python学习笔记之Break和Continue用法分析
Aug 14 Python
解决python 文本过滤和清理问题
Aug 28 Python
Python: 传递列表副本方式
Dec 19 Python
python右对齐的实例方法
Jul 05 Python
Django web自定义通用权限控制实现方法
Nov 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实现多文件上传的方法
2015/07/08 PHP
Laravel基础-关于引入公共文件的两种方式
2019/10/18 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
ArrayList类(增强版)
2007/04/04 Javascript
javascript实现获取cookie过期时间的变通方法
2014/08/14 Javascript
在javascript中随机数 math random如何生成指定范围数值的随机数
2015/10/21 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
利用JS如何计算字符串所占字节数示例代码
2017/09/13 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
2018/11/28 Javascript
浅谈vue的第一个commit分析
2020/06/08 Javascript
Vue实现点击导航栏当前标签后变色功能
2020/08/19 Javascript
JavaScript 中的六种循环方法
2021/01/06 Javascript
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
深入Python函数编程的一些特性
2015/04/13 Python
浅析Python 中整型对象存储的位置
2016/05/16 Python
Python如何快速上手? 快速掌握一门新语言的方法
2017/11/14 Python
python检测空间储存剩余大小和指定文件夹内存占用的实例
2018/06/11 Python
实时获取Python的print输出流方法
2019/01/07 Python
浅谈Pytorch中的自动求导函数backward()所需参数的含义
2020/02/29 Python
python实现密码强度校验
2020/03/18 Python
python操作微信自动发消息的实现(微信聊天机器人)
2020/07/14 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
实体的生命周期
2013/08/31 面试题
后勤副校长自我鉴定
2013/10/13 职场文书
银行求职信个人范文
2013/12/16 职场文书
大课间活动制度
2014/01/18 职场文书
舞蹈兴趣小组活动总结
2014/07/07 职场文书
“四风”问题整改措施和努力方向
2014/09/20 职场文书
《微笑着面对生活》优秀演讲稿范文
2014/09/23 职场文书
2014年物业管理工作总结
2014/11/21 职场文书
统计员岗位职责范本
2015/04/14 职场文书
幼儿园安全教育月活动总结
2015/05/08 职场文书
入党群众意见范文
2015/06/02 职场文书
新闻稿格式范文
2015/07/18 职场文书
基于Python编写一个监控CPU的应用系统
2022/06/25 Python