问题标签 [awkward-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 投票
2 回答
155 浏览

python - 在数组中重塑数组

我有一个根文件,我用 2000 个条目打开,子条目的数量可变,每列中都有一个不同的变量。可以说我只对其中的 5 个感兴趣。我想把它们放在一个数组中np.shape(array)=(2000,250,5)。250 足以包含每个条目的所有子条目。

通过uproot DATA=[variablename:[array of entries [array of subentries]] 将根文件转换为字典

我创建了一个数组np.zeros(2000,250,5)并用我想要的数据填充它,但它需要大约 500 毫秒,我需要一个可以扩展的解决方案,因为我以后的目标是 100 万个条目。我找到了多种解决方案,但我最低的是大约 300 毫秒

0 投票
1 回答
204 浏览

awkward-array - 为笨拙的数组实现 numpy.linalg.norm

目前,不存在 numpy.linalg.norm 与 akward-arrays 的实现。在笨拙的 1 中,我可以behavior用来覆盖(或添加?)实现,如教程中所示。在我的用例中,我已经成功地实现了和使用np.absolute教程示例的版本。然而,失败。np.subtractTVector2TVector3numpy.linalg.norm

如何定义笨拙数组的行为?例如,在下面的示例中,我使用一个简单的 int64 数组进行了尝试:

0 投票
1 回答
128 浏览

python - 尴尬的数组间隔添加属性

我想从根文件中提取数据并使其成形,以一个 numpy 数组/张量结束,以将其填充到神经网络中。我已经能够通过填充获得我想要的轨迹数据,将其转换为一个 numpy 数组,但我想用它们所来自的喷气机的数据来扩展我的数组。所以我有所有航迹的信息,每架喷气机的信息以及它们对应的航迹间隔。我的第一个本能是构建一个轨道形状的数组,并使用类似的东西np.dstack来合并这两个。

这是我到目前为止的地方。出于效率原因,我希望在进入 numpy 之前能够在尴尬中实现这一点。我在 numpy 中尝试了以下方法:

但它已经花费了大约 3 秒,甚至没有达到我仅 2000 个事件的目标。目的基本是[track_variables] ->[track_variables,jet_variables if track is in intervall],要存起来[(event1)[[track_1],...,[track_padding_size]],...,(eventn)[[track_1],...,[track_padding_size]]]

0 投票
2 回答
68 浏览

python - Simulate numpy.cumsum at the deepest level of a JaggedArray

I have a singe level nested array, and I'd like to calculate the running sum at the deepest level:

after doing something like numpy.cumsum(jagged_array) I'd like to have:

In short - the running sum at the deepest level (which is restarted with each new "event").

I'm using awkard0, and the documentation says that broadcast is run at the deepest level, however, I get an error when I tried just handing a JaggedArray directly to numpy.cumsum: operands could not be broadcast together with shapes (2,) (3,)

The dataset is large - I'd like to stay within the awkward system - so avoid python loops in processing these.

0 投票
1 回答
149 浏览

python-3.x - 使用带有索引数组的尴尬数组时出错

我目前有一个值列表和一个尴尬的整数值数组。我想要相同维度的笨拙数组,但其中的值是与笨拙数组的整数值相对应的“值”数组的索引。例如:

我想要类似 values[arr] 的东西,但这会产生以下错误:

如果我用循环运行它,我会得到我想要的:

还有另一种方法可以做到这一点,还是这样?恐怕这对我的申请来说太慢了。

谢谢!

0 投票
2 回答
116 浏览

python - 将尴尬数组的值类型从 float 更改为 int

我有一个笨拙的浮点类型数组,我需要它是 int 类型。相当于以下 numpy 片段的东西:

0 投票
1 回答
39 浏览

uproot - 尴尬的数组 ak.unzip 行为

当我访问根文件并提取我想要的数据时,如下例所示:

该数组的键的排序与用于过滤键的列表的排序不同。如果我现在使用 ak.unzip():

分拣是否可靠且可重复?如果我打开不同的根文件,我是否能够实现相同的“排序”

0 投票
1 回答
183 浏览

python-3.x - 根据字典替换尴尬数组中的值的有效方法?

我有一个带有整数键和浮点值的字典。我还有一个带有整数条目的二维尴尬数组(我正在使用尴尬1)。我想根据字典用相应的浮点数替换这些整数,保持尴尬的数组格式。

假设密钥从 0 运行到 999,到目前为止我的解决方案是这样的:

有没有更快的方法来做到这一点?

更新

我的工作代码的最小可重现示例:

我的数组:

结果数组:

0 投票
3 回答
203 浏览

python - 使用笨拙的嵌套字典中的锯齿状列表中的过滤元素

我有一个带有锯齿状列表 'c' 的大型嵌套字典:

'c' 的元素是点标签。

对于“c”中的每个唯一点标签,我想生成“b”中相应值的过滤列表,

所以例如'first_block'在'c'中有独特的元素:5、6、10、20

我想为每个“块”获取/提取以下列表,以列出与“c”中的特定值关联的“b”的每个值,例如

鉴于“c”是锯齿状的,有关如何创建此结果的任何想法?

一直试图通过转换为 Awkward 数组来做到这一点,但文档目前很少,而且真的不明白如何在 Awkward 中做到这一点。

也对不涉及尴尬的pythonic建议开放

0 投票
1 回答
30 浏览

python - 获取 Awkward 数组中不同级别的所有具有通用名称的属性

笨拙的库是否提供了一种方法来分割给定名称的所有属性,而不管级别如何?我在想这样的事情:

的值rid只是字符串 'abc' 但我期待的更像是以下内容:

但是,我仍在努力解决尴尬的数组,这样我就可以完全离开这里了。