本篇文章解决:如何通过某列或某行数据满足一定条件来筛选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. 在Ubuntu 8.04上安装Domino R8.02
  2. 南蛮图腾(洛谷P1498题题解,Java语言描述)
  3. 千寻和省cors精度对比_测量员新手上路攻略:解析省CORS和千寻CORS账号区别及其如何选择运用...
  4. 疯狂开店! 华为不甘心只卖车 | 次世代车研所
  5. python 编码解码原理_Python的编码解码问题
  6. 简单实现系统托盘 - 回复 闪 的问题
  7. iOS 使用符号断点定位警告约束警告-[LayoutConstraints] Unable to simultaneously satisfy constrai...
  8. Javascript中this、prototype、constructor的理解
  9. Android 系统服务列表
  10. C++11多线程 unique_lock详解
  11. 【音视频】使用DXGI实现多屏幕采集(4-2)
  12. 行路难PPT计算机考试,《行路难》公开课.ppt
  13. k8s-kubeadm安装(五 网络插件calico)
  14. 搜索推荐广告三者异同
  15. Unity3D——AR小游戏
  16. 论印度为什么软件行业这么发达(搞笑篇)
  17. python编程从入门到实践练习15-3:分子运动
  18. 09 如何通过搜索引擎寻找海量的免费商用图片
  19. [scRNA-seq]单细胞转录因子分析——SCENIC算法简析
  20. 【C++11】 之 std::unique_ptr 详解

热门文章

  1. Centos7安装加速下载工具aria2
  2. 前端如何进行seo优化
  3. Unity3D入门(三):游戏场景制作 3D 模型基础
  4. bcc语料库下载_语料库汇总
  5. GLM(General Language Model)代码分析
  6. 关于手画猫,耳朵涂颜色
  7. 一鸣心所向:数字营销中的智商、逆商和情商
  8. 电驴服务器更新的作用,用电驴,这些服务器知识你必知
  9. PECompact 2.79 Beta D by Sonny27
  10. html调用暴风影音,暴风影音4大使用设置技巧