numpy ndarray 取出满足特定条件的某些行实例


Posted in Python onDecember 05, 2019

在进行物体检测的ground truth boxes annotations包围框坐标数据整理时,需要实现这样的功能:

numpy里面,对于N*4的数组,要实现对于每一行,如果第3列和第1列数值相等或者第2列和第0列数值相等,就删除这一行,要返回保留下来的numpy数组 shape M*4

对于numpy数组的操作要尽量避免for循环,因为numpy数组支持布尔索引。

import numpy as np

a1=np.array(
  [1,0,1,5]
)
a2=np.array(
  [0,8,5,8]
)
center=np.random.randint(0,10,size=(3,4))
# print(a1.shape,a2.shape,center.shape)
b=np.vstack((a1,center,a2))
'''

numpy vstack 所输入的参数必须是list或者tuple的iterable对象,在竖直方向上进行数组拼接

其中list或者tuple中的每个元素是numpy.ndarray类型

它们必须具有相同的列数,拼接完成后行数增加

numpy hstack 在水平方向上进行数组拼接

进行拼接的数组必须具有相同的行数,拼接完成后列数增加

'''
print(b.shape,b)
out=b[b[:,3]!=b[:,1]]
out2=out[out[:,2]!=out[:,0]]
print(out2.shape,out2)
'''
(5, 4) 
[[1 0 1 5]
 [6 9 9 1]
 [9 1 6 5]
 [2 8 8 1]
 [0 8 5 8]]
(3, 4) 
[[6 9 9 1]
 [9 1 6 5]
 [2 8 8 1]]
'''
b1=a1.reshape(-1,1)
b2=a2.reshape(-1,1)
before_list=[]
before_list.append(b1)
before_list.append(center.reshape(4,3))
before_list.append(b2)
out3=np.hstack(before_list)
print(out3.shape)#(4, 5)

以上这篇numpy ndarray 取出满足特定条件的某些行实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django中模版的子目录与include标签的使用方法
Jul 16 Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 Python
python实现简单爬虫功能的示例
Oct 24 Python
详谈Python高阶函数与函数装饰器(推荐)
Sep 30 Python
Python中查看变量的类型内存地址所占字节的大小
Jun 26 Python
使用OpenCV实现仿射变换—缩放功能
Aug 29 Python
tensorflow 分类损失函数使用小记
Feb 18 Python
python3读取autocad图形文件.py实例
Jun 05 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
Python sublime安装及配置过程详解
Jun 29 Python
Python实现一个论文下载器的过程
Jan 18 Python
Python 操作pdf pdfplumber读取PDF写入Exce
Aug 14 Python
使用 Supervisor 监控 Python3 进程方式
Dec 05 #Python
Python 寻找局部最高点的实现
Dec 05 #Python
解决pycharm 安装numpy失败的问题
Dec 05 #Python
Flask项目中实现短信验证码和邮箱验证码功能
Dec 05 #Python
Python for i in range ()用法详解
Sep 18 #Python
关于sys.stdout和print的区别详解
Dec 05 #Python
flask实现验证码并验证功能
Dec 05 #Python
You might like
使用字符串函数输出整数化的PHP版本号
2006/10/09 PHP
删除数组元素实用的PHP数组函数
2008/08/18 PHP
PHP OPCode缓存 APC详细介绍
2010/10/12 PHP
如何在Ubuntu下启动Apache的Rewrite功能
2013/07/05 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
php中使用sftp教程
2015/03/30 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
2007/08/31 Javascript
asp.net+jquery滚动滚动条加载数据的下拉控件
2010/06/25 Javascript
js控制的回到页面顶端goTop的代码实现
2013/03/20 Javascript
jQuery根据用户电脑是mac还是pc加载对应样式的方法
2015/06/26 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
微信小程序 支付简单实例及注意事项
2017/01/06 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
python写入并获取剪切板内容的实例
2018/05/31 Python
python os.path模块常用方法实例详解
2018/09/16 Python
Python实战购物车项目的实现参考
2019/02/20 Python
关于numpy中eye和identity的区别详解
2019/11/29 Python
python mysql自增字段AUTO_INCREMENT值的修改方式
2020/05/18 Python
python 瀑布线指标编写实例
2020/06/03 Python
使用Python操作MySQL的小技巧
2020/09/10 Python
详解canvas绘制多张图的排列顺序问题
2019/01/21 HTML / CSS
泰国国际航空公司官网:Thai Airways International
2019/12/04 全球购物
MediaMarkt比利时:欧洲最大电器连锁店
2020/12/21 全球购物
澳大利亚电商Catch新西兰站:Catch.co.nz
2020/05/30 全球购物
如何利用cmp命令比较文件
2013/09/23 面试题
完美实现CSS垂直居中的11种方法
2021/03/27 HTML / CSS
酒店人事专员岗位职责
2013/12/19 职场文书
高中军训感言800字
2014/03/05 职场文书
工程承诺书怎么写
2014/05/24 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
限期整改通知书
2015/04/22 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
2015年酒店年度工作总结
2015/05/23 职场文书
民政局2016年“六一”儿童节慰问活动总结
2016/04/06 职场文书
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS