问题标签 [masked-array]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
127 浏览

python - 在 for 循环中追加列表数组

我有一个掩码数组 Xpos:

当我问Xpos[3000,:]这是输出时:

所以一堆掩码值,一堆数字和一堆零。我想要一个没有掩码值和零的新数组,保持数组的相同结构。我正在使用的代码是这样的:

但是这给了我一个带有值的长数组,并且不保留原始结构,例如Xpos[[a,b,c,],[a,b,c,],[a,b,c,]...]带有abc数字。所以对于输出,我想要一些不全为零Xpos1=[[a,b,c,],[a,b,c,],[a,b,c,]...]abc数字。

如何改进我的编码以将其保留为数组列表(如果我使用了错误的术语,请原谅我)?

0 投票
1 回答
585 浏览

python - 从数组列表中删除被屏蔽的元素

我正在尝试在 Jupyter 中绘制一个叶热图,但我收到错误 ValueError: Location values cannot contain NaNs, got: [nan, nan] 所以我需要从数组列表中删除被屏蔽的元素。我的数组如下所示:

列表中的每个数组都有不同数量的被屏蔽元素,一些仅在末尾被屏蔽,另一些则完全被屏蔽。如何删除每个被屏蔽的元素?所以完全删除完全屏蔽的元素,只删除其他元素中的几个元素。这将导致数组具有不同长度的列表。

我的整个代码是:

这给了我错误:

所以我需要从 Xpos 和 Ypos 中删除我的 NaN(Ypos 类似于 Xpos)

我试过了:

任何帮助表示赞赏!

0 投票
2 回答
257 浏览

python - 合并具有不同长度的屏蔽数组的二维列表

我有一个非常大的屏蔽数组列表,我想将它们组合在一起,但数组的长度不同。为了简单起见,这就是我想要做的,我想获得 C:

所以我基本上只是把两个列表放在一起。实际上,我的数组 A 看起来像这样(B 类似):

问题是大多数命令都不起作用,因为它是一个掩码数组,或者因为它具有不同的大小。我已经检查了这些问题:

任何帮助表示赞赏!

0 投票
1 回答
66 浏览

python - 循环 clump_masked 索引

y_filtered我有一个包含一些掩码值的数组。我想用我根据相邻值计算的某个值替换这些值。我可以使用masked_slices = ma.clump_masked(y_filtered). 这将返回一个切片列表,例如[slice(194, 196, None)].

通过使用,我可以轻松地从我的掩码数组中获取值y_filtered[masked_slices],甚至循环它们。但是,我还需要访问值的索引,所以我可以根据它的邻居计算它的新值。枚举(逻辑上)返回 0、1 等,而不是我需要的索引。

这是我想出的解决方案。

这是非常丑陋的方法,我认为必须有更好的方法来做到这一点。有什么建议么?

谢谢!

0 投票
3 回答
677 浏览

python - 屏蔽二维数组并根据屏蔽索引对第二个数组进行操作

我有一个读取和输出二维数组的函数。对于输入中等于 0 的每个索引,我希望输出是恒定的(在这种情况下为 pi),否则我会对其执行一些数学运算。例如:

这应该给我以下信息:

即它已应用于y**2二维列表中不等于零的每个元素,并将所有零替换为 pi。

我需要这个,因为我的函数将包括除法,而且我事先不知道索引。我正在尝试将 matlab 教程从教科书转换为 Python,而这个功能让我很困惑!

谢谢

0 投票
1 回答
198 浏览

scipy - 带有掩码数组的 scipy rankdata

我注意到 rankdata 与 maksed_array 的以下奇怪行为。这是代码:

根据 scipy doc,掩码值将被分配 0 (use_missing=False)。那么为什么它在第二个输出 [1 0] 呢?漏洞?

0 投票
2 回答
375 浏览

python - 贬低和标准化 3d 掩码中的 4d 数组?

我想贬低 ts(沿轴 3),并除以它的标准偏差(沿轴 3),所有这些都在掩码内。

我这样做正确吗?

有更快的方法吗?

0 投票
1 回答
166 浏览

python - 将掩码值移到 2D python 数组的末尾?

假设我们有一个 2D numpy 数组,我们使用 np.ma.masked_where 来屏蔽一些元素。在每一行中,我们希望将所有被屏蔽的元素移动到末尾,同时保留其余元素的顺序。有没有一种简单的无循环方式来做到这一点?

例如,假设我们有以下带掩码的 2D 矩阵:

我们想返回:

0 投票
1 回答
1582 浏览

python - 在 numpy 中仅屏蔽特定范围的索引

我有一个ndarray。我需要屏蔽任何小于 50 的数字,直到遇到的第一个数字大于 50。这应该在一行的开头和结尾都完成。对,当遇到的第一个数字大于 50 时,屏蔽应该停止。

一行看起来像:

我想要类似的东西:

掩蔽应该在第二行的 57 之前停止,在最后一行的第 4 行的 126 处停止。

我试过 ma.masked_where,但它也掩盖了两者之间的 0,这是我不想要的。

所以,如果有办法做到这一点,或者你能帮助我,以便我可以指定一系列索引,例如:[0:40]只有应该被屏蔽。

我不想在屏蔽后更改数组的维度。此外, 的存在--不会对我的目的产生影响。

0 投票
0 回答
299 浏览

python - 在 python 中以 1D 插入 3D 蒙版数组

我需要一个更快的解决方案来将一维的 3D 数组内插到 2D 表面。我的数据是网格化的(k,j,i):水平网格是规则的(j,i),但垂直网格不是(即每个 i,j 点的深度点不同)。此外,我的阵列有一个 2D 水平蒙版。我目前的解决方案是:

它可以工作,但是太慢了(我的水平网格大约是 200x600,并且使用遮罩的插值数量减少了很多,但仍然需要大约一个小时)。

我研究了griddata,但是有一个问题,一个问题:问题是,它使用所有值来插值点,而实际上我只需要z方向上的一维插值(哪个,无论如何),但是问题显然,它不喜欢 nans(实际上。不是实际的 NaN,而是掩码值):

我得到:

建议深表感谢