本篇文章解决:如何通过某列或某行数据满足一定条件来筛选ndarry中的数据,主要采用条件设置得到的布尔索引数组来筛选ndarry数据。

对于一维的ndarry:

a=np.array([1,2,3])
print(a==1)  #打印结果为:[ True False False],即为一个布尔类型的数组# 将布尔类型的数组作为索引会返回布尔值为Ture对应位置的数据
a[a==1]  #其值为[1]

对于二维的ndarry:

# 当a为二维数组时,如果想对其中一行,或者一列利用布尔索引
a=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(a[[True,False,True],1])
print(a[0,[True,False,True]])
结果:
[2 8]
[1 3]
注意,布尔索引的长度要和二维数组列的元素个数和行的元素个数相同

实际应用:
对于下面的数据,我们要筛选最后一列中数据等于0的样本

a = np.array([[1.0, 2.0, 2.2, 0],[2.0, 2.1, 3.1, 1],[1.0, 1.2, 1.5, 2],[4.1, 3.1, 5.2, 0]])

我们可以看出来答案是:[[1.0, 2.0, 2.2, 0], [4.1, 3.1, 5.2, 0]]

具体用代码完成:首先可以利用a[:, -1]获取最后一列数据,然后利用条件a[:, -1] == 0筛选出满足该条件的行,因为a[:, -1] == 0返回的是一个布尔数组,该序列与每行数据对应。然后通过利用该布尔数组作为a的行索引,便可以获取到满足条件的每行样本,然后再控制a的列索引即可以获取到想要的数据,即a[a[:, -1] == 0, :]


print(a[a[:, -1] == 0, :])

numpy ndarry根据条件筛选数据相关推荐

  1. python基础一 -------如何在列表字典集合中根据条件筛选数据

    如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) 1 ...

  2. R语言对dataframe行数据进行筛选(row selection)、筛选数据行、基于条件筛选数据行

    R语言对dataframe行数据进行筛选(row selection).筛选数据行.基于条件筛选数据行 目录

  3. 向内存中连续存入数据_实例35_在Excel中按条件筛选数据并存入新的表

    老板想要看去年每月领料数量大于1000的数据.手动筛选并复制粘贴出来,需要重复操作12次,实在太麻烦了,还是让Python来做吧.磨刀不误砍柴工,先整理一下思路: 1. 读取原表,将数量大于1000的 ...

  4. 【Python】根据多个列同时进行多条件筛选数据

    import pandas as pddata = pd.DataFrame({'a': [1, 2, 2, 4], 'b': [0, 5, 5, 6], 'c': [3, 5, 2, 1]}) pr ...

  5. 在Excel中按条件筛选数据并存入新的表

    案例 老板想要看去年每月领料数量大于1000的数据.手动筛选并复制粘贴出来,需要重复操作12次,实在太麻烦了,还是让Python来做吧.磨刀不误砍柴工,先整理一下思路: 1·读取原表,将数量大于100 ...

  6. python多条件筛选数据-Python实现多条件筛选目标数据功能【测试可用】

    本文实例讲述了Python实现多条件筛选目标数据功能.分享给大家供大家参考,具体如下: python中提供了一些数据过滤功能,可以使用内建函数,也可以使用循环语句来判断,或者使用pandas库,当然在 ...

  7. python多条件筛选数据filter_Python如何用filter函数筛选数据

    一.filter函数简介 filter函数主要用来筛选数据,过滤掉不符合条件的元素,并返回一个迭代器对象,如果要转换为列表list或者元祖tuple,可以使用内置函数list() 或者内置函数tupl ...

  8. pandas按若干个列的组合条件筛选数据

    还是用图说话 A文件: 比如,我想筛选出"设计井别"."投产井别"."目前井别"三列数据都为11的数据,结果如下: 当然,这里的筛选条件可以 ...

  9. mybatis plus 条件筛选数据

    //创建QueryWrapper对象QueryWrapper<User> wrapper = new QueryWrapper<>();//通过QueryWrapper设置条件 ...

  10. python实现按条件筛选数据

    客户需求 查看某一个销售人员的销售额 数据存储情况如下图所示: 代码实现查看丽丽的销售额 import pandas as pddf1 = pd.read_excel("test.xlsx& ...

最新文章

  1. application配置token_Kerrigan:配置中心管理UI的实现思路和技术细节
  2. HDU 2181 哈密顿绕行世界问题【DFS】
  3. openssl passwd之openssl命令详解
  4. php redis decr_对于高并发的问题你知道怎么处理吗?php接口如何处理并发问题
  5. [js] 请写一个性能最好的深度克隆对象的方法
  6. Sharepoint学习笔记—ECM系列—1 Content Type Syndication
  7. 自定义评分器Similarity,提高搜索体验(转)
  8. 基于JAVA+SpringMVC+MYSQL的求职招聘管理系统
  9. python 黏贴版 pyperclip
  10. 从主机名谈Hadoop集群管理
  11. 从零开始创建react项目的三种方法(转)
  12. android沉浸式状态栏封装—教你玩出新花样
  13. 20200601每日一句
  14. SQLite:关于日期的字段的优化将给Julia带来大幅效率提升
  15. 税务会计实务【15】
  16. 五角星符号怎么打出来
  17. iOS 12+ ReplayKit 系统录屏(一)
  18. 免疫荧光实验相关的注意事项汇总
  19. error: macro LIST_HEAD passed 2 arguments, but takes just 1
  20. sqoop 数据导入HDFS

热门文章

  1. ZZUOJ 公主与骑士 (BFS)
  2. 用指针写藏头诗c语言,智能藏头诗小程序:小程序可以自动写诗啦!为“Ta”写首诗表白~...
  3. 【数据库】数据库错题集(一)
  4. 央视力荐的这套书,让5岁孩子看漫画,秒懂物理,学习早“开窍”!
  5. 疑问代词who和whom的用法
  6. mysql strict_MySQL模式 Strict Mode知识点详解
  7. 严格模式 Strict Mode,与ES2020同步
  8. 字根校对-中文校对软件
  9. “我在网红书店,从来不看书”
  10. python微信群发助手在哪_python 微信群发_Python-Pyqt5编写微信群发软件