将双峰分布拟合到一组值

2024-07-03 04:29:30 发布

您现在位置:Python中文网/ 问答频道 /正文

给定一个一维的值数组,找出最适合它的双峰分布的最简单方法是什么,其中每个“模式”都是正态分布?或者换句话说,你如何找到两个正态分布的组合来最好地再现一维值数组?在

具体来说,我对在python中实现这一点很感兴趣,但答案不一定是特定于语言的。在

谢谢!在


Tags: 方法答案语言模式数组正态分布双峰分布
3条回答

我只是想弄明白为什么一个一维阵列需要一个双模分布?这样做有什么好处?在

我建议使用awesomescipy包。 它提供了一些优化方法。在

有一个很大的警告,简单地应用一个预先定义的最小二乘拟合或类似的东西。在

以下是您将遇到的几个问题:

  1. 噪声大于第二个峰值/两个峰值。在
  2. 部分峰值-您的数据在其中一个边界被截断。在
  3. 采样-峰值宽度小于采样数据。在
  4. 这不正常-你会得到一些结果。。。在
  5. 重叠-如果峰重叠,你会发现通常一个峰拟合正确,但第二个峰会接近零。。。在

你要做的是一个高斯混合模型。解决这个问题的标准方法是使用期望最大化,scipysvn包含一个关于机器学习和em的部分,称为scikits。我经常用它。在

相关问题 更多 >