问题标签 [boost-histogram]

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 回答
81 浏览

python - 将现有的 numpy 直方图转换为提升直方图

我有很多numpy (1d) histograms。他们每个人都是这样创建的:

将它们变成提升直方图的最佳方法是什么?

0 投票
1 回答
65 浏览

histogram - 具有提升直方图的经验概率

boost::histogram在 [-3.5,3.5] 范围内有 100 个垃圾箱。我用数据向量填充它qp。由于我使用周期性 BC,所有 q in 的值qp都在 [-3.5,3.5] 中。

为了安全起见,我计算了垃圾箱中的所有

我为情节准备数据

结果让我很困惑。它应该是一个归一化的概率分布,但绝对不是(y 轴上的值太低了)

在此处输入图像描述

有没有一种boost方法可以自动获得(标准化)相对频率?

0 投票
0 回答
114 浏览

python - 将提升直方图写入在 uproot 中创建的根文件

我目前正在尝试用 uproot 读取 ROOT 树,用 boost-histogram 记录和填充直方图,并将它们写回一个新的 ROOT 文件。这似乎对 bin 内容非常有效,但我似乎无法为最终 ROOT 文件中的直方图获得正确的 bin 错误。当我阅读这些直方图时,h.GetBinError(b)似乎等于h.GetBinContent(b),而我想知道通常为 ROOT 直方图产生的熟悉的 sumW2 错误。我的工作流程如下,使用 python 3.8:

然后我使用 uproot4.iterate 遍历输入树,为每个“块”生成一个尴尬的数组,在此表示为e

我不确定如何在构建提升直方图时获得 sumw2 权重,但根据文档,我将直方图定义更改为:

但是,当我运行我的代码时,这会导致该.to_numpy()行出现问题。错误说:“ what = uproot3_methods.convert.towriteable(what)”“ TypeError: cannot perform reduce with flexible type

是否有其他方法可以将 sumW2 样式的错误从 boost-histogram 传播到在 uproot 中创建的 ROOT 文件?或者我对这个变量的理解可能存在错误storage=......任何帮助将不胜感激。

0 投票
0 回答
18 浏览

boost - 是否可以从 boost::histogram 继承并在运行时设置轴?

我正在尝试用专有的直方图实现替换,boost::histogram但我被卡住了。是否可以在运行时继承boost::histogram和设置轴?