尝试根据一列中的值屏蔽 2D numpy 数组

2023-12-23

我有以下数组:

[[    6.           105.             2.             8.09841881]
[    6.           105.             4.             9.34220351]
[    6.           105.             6.             9.97663435]
[    6.          1001.             2.             9.57108242]
[    6.          1001.             4.            12.22355794]
[    6.          1001.             6.            13.57295942]
[   12.          1001.             2.            12.37474466]
[   12.          1001.             4.            17.45334004]
[   12.          1001.             6.            19.88499289]
[   18.          1007.             2.            16.09076561]
[   18.          1007.             4.            23.43742275]
[   18.          1007.             6.            27.73041646]]

我尝试仅提取第一个元素为六的行

print ma.MaskedArray(a, mask=(np.ones_like(a)*(a[:,0]==6.0)).T)

我从问题中得到的“根据一列中的值屏蔽 2D numpy 数组 https://stackoverflow.com/questions/4625744/mask-a-2d-numpy-array-based-on-values-in-one-column”。但是,我得到

File "./Prova.py", line 170, in <module>
print ma.MaskedArray(a, mask=(np.ones_like(a)*(a[:,0]==6.0)).T)
ValueError: operands could not be broadcast together with shapes (12,4) (12)

你知道为什么这不起作用吗?

这个问题可能很愚蠢,但请耐心等待,因为我刚刚开始编程 python。 :-)


设置一些要处理的测试数据:

>>> a = np.arange(12*4).reshape((12,4))

首先,我们为掩码数组“分配”空间:

>>> mask = np.empty(a.shape,dtype=bool)

现在我们不能从第一列分配给它a == 6直接因为它们的形状不正确:

>>> mask[:,:] = a[:,0] == 6
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: operands could not be broadcast together with shapes (12,4) (12) 

但我们可以播出我们的第一个专栏a只需插入一个新轴即可达到正确的形状,使其成为一个二维数组:

>>> mask[:,:] = (a[:,0] == 6)[:,np.newaxis]

正如我们所看到的,我们的掩码现在是正确的。

>>> mask
array([[ True,  True,  True,  True],
       [ True,  True,  True,  True],
       [ True,  True,  True,  True],
       [ True,  True,  True,  True],
       [ True,  True,  True,  True],
       [False, False, False, False],
       [False, False, False, False],
       [False, False, False, False],
       [False, False, False, False],
       [False, False, False, False],
       [False, False, False, False],
       [False, False, False, False]], dtype=bool)

现在我们只需制作蒙版数组并坐下来享受:)。

>>> ma.MaskedArray(a,mask=mask)
masked_array(data =
 [[-- -- -- --]
 [-- -- -- --]
 [-- -- -- --]
 [-- -- -- --]
 [-- -- -- --]
 [20 21 22 23]
 [24 25 26 27]
 [28 29 30 31]
 [32 33 34 35]
 [36 37 38 39]
 [40 41 42 43]
 [44 45 46 47]],
             mask =
 [[ True  True  True  True]
 [ True  True  True  True]
 [ True  True  True  True]
 [ True  True  True  True]
 [ True  True  True  True]
 [False False False False]
 [False False False False]
 [False False False False]
 [False False False False]
 [False False False False]
 [False False False False]
 [False False False False]],
       fill_value = 999999)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试根据一列中的值屏蔽 2D numpy 数组 的相关文章

随机推荐

  • 基于类和基于对象的语言比较(ECMAScript 规范)

    In a class based object oriented language in general state is carried by instances methods are carried by classes and in
  • 从 MVC 项目访问类库?

    我在一个解决方案中有一个类库项目和 MVC 项目 我的类库具有命名空间 MyStuff Classes 我的 MVC 项目具有命名空间 MyStuff Web 我似乎无法从 mvc 项目访问我的类库 反之亦然 直接或使用 using 指令
  • iPhone 5 的弱光增强模式

    有谁能够在他们的自定义相机应用程序中使用 iPhone 5 的新低光增强模式吗 我尝试了以下代码 但发现没有任何区别 而本机相机应用程序显着提高了亮度 if captureManager backFacingCamera isLowLigh
  • 微服务架构中如何在微服务之间共享java模型

    我正在设计新应用程序的架构 我选择了微服务架构 在我的架构中 我注意到我有不同微服务使用的模型 我想知道是否有一种方法可以在微服务之间共享模型代码 而不是在每个微服务中编写它们 顺便说一句 我正在为我的应用程序使用 spring boot
  • PHP $_POST 数组用于未选中的复选框

    如果我有一个带有两个复选框的表单 它们具有与 name 属性相同的数组 名称 1 1 这些复选框都没有被勾选 我有什么方法可以知道它们存在于表单中吗 如果未选中这些字段 则不会通过 POST 数组发送这些字段 我问这个是因为这些名称值是动态
  • 更改 SQL Server 2005 中数据库图表的所有者

    我需要更改 SQL Server 2005 中数据库图表的所有者 目前它归我所有 domain username diagramName 我想将其更改为 dbo dbo diagramName 所有 我以为我可以使用 sp changeob
  • 如何从 php 脚本设置 cron 作业?

    我是 cron 工作的新手 我研究了一些有关 cron 作业的基础知识 我可以使用 cron 选项卡调用 php 通过在 etc crontab 中使用以下命令 10 root usr bin php var www PATH TO SCR
  • d3.js:将匿名函数作为参数传递给居中力?

    我正在制作一个交互式气泡图 并且正在研究将数据分为两组并移动到屏幕两侧的功能 我在模拟中使用了居中力 因为我认为它比使用forceX 和forceY 能提供更好 更一致的数据显示 但是 我在分割数据时遇到了麻烦 我的想法是 由于您可以将匿名
  • 背景颜色项目组合框 WPF

    我正在做一个 WPF 并有一个组合框 其中包含计算机上可用端口的列表 我想改变这些物品的颜色 我的组合框是这些
  • Grails - 仅供对象所有者访问

    我仍在开发我的第一个 Grails 应用程序 这次 我的问题是限制特定用户对某些操作的访问 假设用户添加一些对象 例如图书 我想仅向管理员和添加书籍的用户授予编辑书籍的权限 我目前正在使用 Acegi 插件 我知道该插件有更新版本 但我不确
  • 如何在 Swift 中编写多行字符串?

    如何将字符串拆分为多行 如下所示 var text String This is some text over multiple lines Swift 4 支持多行字符串文字 https github com apple swift ev
  • Akka actor 使用 Scala 进行单元测试

    我对 Scala 还很陌生 所以请保持温柔 在我当前正在构建的应用程序中 我正在使用 Akka Actor 并且我想编写一些单元测试 我遇到了这个为 Akka Actor 编写单元测试的官方文档 http doc akka io docs
  • 一起使用的 HTML 和 CSS 是否良好?

    最好的使用方法是什么
  • 这段代码真的可以对抗 SQL 注入吗? [复制]

    这个问题在这里已经有答案了 可能的重复 PHP 终极清洁 安全功能 https stackoverflow com questions 4223980 php the ultimate clean secure function 我在这里找
  • 无法在python3中安装boto

    我正在尝试从源代码 pypi 安装 boto 但无法使用 python 3 2 安装它 为什么会失败 c boto gt Python32 python exe setup py install Traceback most recent
  • 重铸 *void 函数参数

    我发布了一个问题here https stackoverflow com questions 8434884 nlopt with armadillo data早些时候 我想我可以回答是否有人可以帮助我解决以下问题 我有一个函数 doubl
  • 如何向 Unity 注册 AutoMapper 配置文件

    我有以下 AutoMapper 配置文件 public class AutoMapperBootstrap Profile protected override void Configure CreateMap
  • EProxy URI 在ecore 模型中无法解析

    在我的 Ecore 模型中 来自当前模型外部的所有类型都不会由其代理解析 返回对象的所有字段getType are null并且运行时只填写存储类型URI 这是我的模型的摘录
  • dplyr / R 重置累加和

    如果 当前 总和超过某个阈值 我想使用 dplyr 生成带有重置的累积总和 在下面 我想对 a 进行求和 library dplyr library tibble tib lt tibble t c 1 2 3 4 5 6 a c 2 3
  • 尝试根据一列中的值屏蔽 2D numpy 数组

    我有以下数组 6 105 2 8 09841881 6 105 4 9 34220351 6 105 6 9 97663435 6 1001 2 9 57108242 6 1001 4 12 22355794 6 1001 6