问题标签 [structured-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 投票
1 回答
195 浏览

numpy - 在 numpy 中实例化结构化 dtype 的语法是什么?

如果我有一个像

如何创建该 dtype 的实例,作为标量。

背景,以防万一有更好的方法:

我想有效地表示直接映射到基因组中碱基的标量数组,逐个染色体。我不想要这些基因组数组的数组,每个只是一组结构化的标量,我想按名称/位置引用,并且能够添加/减去/等。

似乎 dtype.type() 可能是前进的道路,但我还没有找到正确调用此函数的有用文档。

所以假设我有:

最后一行是不对的,但希望它传达了我目前正在尝试的内容。

这是一个可怕的想法吗?如果是这样,正确的想法是什么?如果没有,实现它的正确方法是什么?

这种工作,但很糟糕:

0 投票
1 回答
300 浏览

vb.net - 如何在 vbNET 中填写此结构字符串数组?

Visual Studio 告诉我必须声明变量,即使它已经声明了。

尽管类型是 Int,但我使用循环以类似的方式填充了结构化数组。这次我不想使用循环,只是对其进行硬编码。

谢谢

0 投票
1 回答
680 浏览

numpy - NumPy argmax 和结构化数组错误:期望一个可读的缓冲区对象

argmax使用 NumPy方法时出现以下错误。有人可以帮助我了解发生了什么:

错误是

虽然以下运行没有问题:

似乎是结构化数组造成的错误。但是你能帮忙解释一下原因吗?

0 投票
1 回答
204 浏览

python - 结构化数组的掩码是否应该是结构化的?

我正在研究numpy 问题 2972​​ 和几个相关问题。事实证明,所有这些问题都与数组本身是结构化的情况有关,但它的掩码不是:

如果我以不同方式创建掩码数组,则掩码 dtype 的结构类似于数组本身的 dtype:

前一种情况暴露出几个问题。例如,Rm.__repr__()并且Rm["A"]两者都导致IndexError,尽管它ValueError在过去是 a。

按照设计,模式是否应该是可能的,在哪里A.dtype是结构化的,但A.mask.dtype不是结构化的?

换句话说:是__repr____getitem__方法中的错误numpy.ma.core.MaskedArray,还是真正的错误发生在之前 - 通过首先允许这样一个屏蔽的结构化数组存在?

0 投票
1 回答
963 浏览

python - 如何在 Numpy 中更改结构化数组项的大小?

我正在尝试更改 Numpy 结构化数组中项目的大小。以下代码触发了一个错误,指出由于大小差异,无法广播该数组。除了制作新的结构化数组之外,有没有办法实现我的目标?

0 投票
1 回答
752 浏览

python - 为什么创建此内存视图仅在分配给变量时才会引发 ValueError ?

Python的 memoryview支持datetime64timedelta. 好的。但是当我尝试创建一个memoryview包含datetime64or的结构化数组时timedelta,它似乎可以工作......除非我将它分配给一个变量

这严重挑战了我对 Python 基本工作方式的理解。考虑到(1)IPythons REPL无论如何都会将输出分配给,以及(2)函数/类无法知道调用者将如何处理其输出,这又有何不同f()x = f()_19memoryview

我在 Python 3.4.1、numpy 1.10.0.dev+fbcc24f、Linux 2.6.32-431.23.3.el6.x86_64、Scientific Linux 版本 6.6 上运行代码。


编辑

在 Python 3.5、numpy 1.10.4 上,我得到:

我已经用 numpy 提交了一个错误,尽管我不太确定问题出在哪里。

0 投票
1 回答
334 浏览

python - Fortran 有序(主要列)numpy 结构化数组可能吗?

我正在寻找一种更有效地分配 numpy 结构化数组的列的方法。

例子:

在我的机器上执行比对结构化数组的列进行相同分配快两倍以上:

我尝试test使用 fortran 排序进行创建,但没有帮助。据推测,这些字段在内存中保持交错。

有人知道吗?如果可以提供帮助,我愿意使用低级 numpy 接口和 cython。


编辑 1:回应 hpaulj 的回答

仅当以行优先顺序创建后者时,recarray 列分配和“正常”数组列分配的明显等效性才会产生。使用以列为主的排序,这两个分配远非等价:

行专业

列专业

请注意,对于列优先排序,两个缓冲区不再相同:

0 投票
1 回答
135 浏览

python - 为什么对布尔索引结构化数组的赋值取决于索引顺序?

我最近在使用结构化 numpy 数组时看到了一个没有意义的现象。我希望有人可以帮助我了解发生了什么。我提供了一个最小的工作示例来说明这个问题。问题是这样的:

当使用布尔掩码索引结构化 numpy 数组时,这有效:

但以下没有:

这是一个最小的工作示例:

运行它会产生以下输出:

我们在这里清楚地看到第二次操作没有效果。如果有人可以解释为什么会发生这种情况,将不胜感激。

0 投票
2 回答
662 浏览

python-2.7 - 二维结构化数组

我正在尝试structured array在 Python 中构建一个可以通过列名和行名访问的。用structured arraynumpy的方法可以吗?

示例:我的数组应该大致有这种形式:

我希望有可能执行以下操作:

是否可以在 pyhton 中使用structured arrays或者是否有另一种更适合此类任务的结构?

0 投票
1 回答
220 浏览

python - 获取一个 ndarray 的recarray 视图(也可能是一个视图)

我试图在不复制的情况下将 2D ndarray 视为记录或结构化数组。a如果拥有它的数据,这似乎工作正常

但如果a已经是一个视图,则失败。这是一个例子

有趣的是,在这种情况下b.base是视图的转置

因此,numpy 无法创建我想要的视图是有道理的。

但是,如果我使用

这导致b成为数据的正确副本,以便采用recarray 视图。附带问题:有人可以用花哨的索引来解释这种行为吗?

我的问题是,我是不是走错了路?不支持以我的方式进行查看吗?如果是这样,那么正确的方法是什么?