首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python:比较具有不同条带大小的直方图

Python:比较具有不同条带大小的直方图
EN

Stack Overflow用户
提问于 2019-03-07 20:20:53
回答 1查看 694关注 0票数 1

我想比较两个直方图,它们来自一个评估板,它已经在直方图中对计数的事件进行了分类。我从两个具有不同事件数量的通道(实际上,一个是背景,一个是背景+信号,这是一个非常常见的实验设置)中获取数据,并且具有不同的仓数、不同的仓位宽度和不同的仓位中心位置。

数据文件如下所示:

代码语言:javascript
运行
复制
HSlice [CH1]
...
  44.660      46.255    6
  46.255      47.850    10
  47.850      49.445    18
  49.445      51.040    8
  51.040      52.635    28
  52.635      54.230    4
  54.230      55.825    18
  55.825      57.421    183
  57.421      59.016    582
  59.016      60.611    1786
...
HSlice [CH2]
...
  52.022      53.880    0
  53.880      55.738    9
  55.738      57.596    213
  57.596      59.454    728
  59.454      61.312    2944
  61.312      63.170    9564
...

前两列给出了各自bin的边界(即时间),最后一列表示此时间范围内的事件数量。

现在我想做一种背景减少,也就是说从"background+signal"-histogram中减去背景直方图来获得实际信号的时间轨迹。我不能这样做,因为直方图有很大的不同。在python中有没有一个简单的函数,或者一个优雅的解决方案,如何使数据具有可比性(例如,通过在一个直方图中的两个数据点之间进行插值,以适应另一个直方图中的bin的位置),而不会扰乱实验给出的时间分辨率(既不会让它变得更差,也不会假装更好的时间分辨率)。

谢谢,

lepakk

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-07 20:49:11

通道2的存储箱大小比通道1大(1.858比1.595)。所以我会将值从较小的箱子转移到较大的箱子中。这将导致分辨率的损失,但我认为这比从较大的存储箱转移到较小的存储箱中更诚实,因此提高了分辨率。

现在,我的方法是从通道1中的bin中获取所有值,并将它们分配到其时间bin中心的点。你真的不知道它们最初是在垃圾桶的什么地方测量的,所以这就是你作弊的地方。

现在,根据通道1的新时间值将通道1的值填充到通道2的存储箱中。

这将是我的第一个方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55043659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档