mlab.normpdf无法产生高斯拟合

时间:2018-04-23 00:11:07

标签: python histogram gaussian

非常新的用户,如果我做了任何这样的错误,请道歉(对于链接而不是嵌入的图片也很抱歉,我没有足够的声誉来嵌入图像)。 基本上,我打算使用Python(特别是pyplot.histmlab.normpdf)从我的示波器输出生成CSV文件的高斯拟合,并测量其全宽半高。我遇到了几个问题,其中大部分都解决了,除了这一个我不能为我的生活解决。

我的代码从CSV文件中读取并使用pyplot.hist为其生成直方图。现在,所有的数据(除了第一个,但由于我没有正确地收集数据而失败)产生的图形看起来明显是高斯的,除了直方图的郊区的小区。我期望通过使用range关键字来解决此问题,只有hist在看起来像高斯的部分中添加数据点(可能是不好的做法,但由于我的方法,这是必要的如何使示波器连接到正确配置的系统。

起初我认为这可以很好地解决我的问题。但是,当我将范围调整为重要的线段时,hist仍然会产生具有这些小的边远区的图,这些区使normpdf产生令人不满意的高斯。

作为参考,这里是我的一个CSV文件的直方图(覆盖了normpdf的高斯)图像的链接,而range的参数中没有使用hist(使用bins='auto'): https://nofile.io/f/gM760eEoGsb/hist_norange.PNG(在数据的整个长度上都有一个高斯拟合,包括远离异常值)

我不确定我是否正确,但我认为如果它不是最右边的那个小箱子(也许是稍微调整以忽略直方图的最左边),{{ 1}}应该产生一个合理的高斯。

但是,如果我确实包含了mlab.normpdf关键字,并使用了range,那么我会得到这个:https://nofile.io/f/2UYcHY4P1E6/hist_range1.png(基本相同的是伸展高斯,但这次的范围更小 - 即使我已将范围限制在高斯式区域)

并且,对于子孙后代,如果我将范围进一步限制为直方图并且适合range=(-0.95,-0.64)https://nofile.io/f/tpmvgF1ydYj/hist_range2.PNG

实际的Gaussian根本不会改变形状,它只是将它的末尾压缩到我传递给(-0.83,-0.74)的元组的参数。

此时我不知道造成这种情况的原因是什么,我的代码是错误,rangehist更深的错误还是我采取的数据错误(我是最初的想法,但在我尽最大努力优化系统后,我倾向于将第三个选项排除在外。)

我的代码如下:

normpdf

0 个答案:

没有答案