有很多方法可以将高斯函数拟合到数据集。我经常在拟合数据时使用astropy,这就是为什么我想添加这个作为额外的答案。

我使用的一些数据集应该模拟高斯噪声:import numpy as np

from astropy import modeling

m = modeling.models.Gaussian1D(amplitude=10, mean=30, stddev=5)

x = np.linspace(0, 100, 2000)

data = m(x)

data = data + np.sqrt(data) * np.random.random(x.size) - 0.5

data -= data.min()

plt.plot(x, data)

然后拟合它实际上非常简单,您可以指定要拟合数据的模型和拟合者:fitter = modeling.fitting.LevMarLSQFitter()

model = modeling.models.Gaussian1D() # depending on the data you need to give some initial values

fitted_model = fitter(model, x, data)

并绘制:plt.plot(x, data)

plt.plot(x, fitted_model(x))

不过,也可以只使用Scipy,但必须自己定义函数:from scipy import optimize

def gaussian(x, amplitude, mean, stddev):

return amplitude * np.exp(-((x - mean) / 4 / stddev)**2)

popt, _ = optimize.curve_fit(gaussian, x, data)

这将返回拟合的最佳参数,您可以这样绘制:plt.plot(x, data)

plt.plot(x, gaussian(x, *popt))

python高斯拟合_如何在python中拟合高斯曲线?相关推荐

  1. python 线性回归模型_如何在Python中建立和训练线性和逻辑回归ML模型

    python 线性回归模型 Linear regression and logistic regression are two of the most popular machine learning ...

  2. unbantu上python安装步骤_如何在Ubuntu中安装Python 3.6?

    Python是增长最快的主要通用编程语言.原因有很多,比如它的可读性和灵活性,易于学习和使用,可靠和高效. 有两个主要的Python版本被使用- 2和3 (Python的现在和未来);前者将看不到新的 ...

  3. python进程暂停_如何在Python中暂停多进程?

    我希望用户能够在怎么开始的实现它?在 我的代码是:# -*- coding: utf-8 -*- from PySide import QtCore, QtGui from Ui_MainWindow ...

  4. python 概率分布函数_如何在Python中实现这五类强大的概率分布

    匿名用户 1级 2016-04-25 回答 首页 所有文章 观点与动态 基础知识 系列教程 实践项目 工具与框架应用 工具资源 伯乐在线 > Python - 伯乐在线 > 所有文章 &g ...

  5. python mqtt库_如何在 Python 中使用 MQTT

    Python 是一种广泛使用的解释型.高级编程.通用型编程语言.Python 的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词).Python 让开发者能 ...

  6. python 获取当前目录_如何在Python中获取当前的工作目录?

    python 获取当前目录 To get the current working directory in Python, there is a library function getcwd() i ...

  7. eclipse配置python开发环境_如何在Eclipse中配置python开发环境

    展开全部 步骤1: 下载用于在2113Eclipse中开发Python的插件PyDev. 步骤2: 解压5261python.将解压后的features和plugins文件4102夹中的1653内容拷 ...

  8. win10系统64位安装python什么版本_如何在win10中安装Python

    本文主要讲解win10如何安装python,希望对初学的小伙伴有帮助.环境:win 10 64位操作系统1.python下载https://www.python.org/downloads/2.x和3 ...

  9. python标题行_如何在python datafram中更改标题行

    在python中使用pandas更改现有数据帧中的头行时遇到问题.导入pandas和csv文件后,我将一个标题行设置为None,以便能够在转置后删除重复的日期.但是这会留下一个我不想要的行标题(实际上 ...

  10. python自增_如何在python语言实现自增和自减功能并显示结果

    在python语言中,跟Java和JavaScript语言不一样,python中没有自增和自减功能,而Java和JavaScript中有.但是,python语言可以使用变量加1或减1替换.下面利用几个 ...

最新文章

  1. Linux Terminal 控制终端的使用
  2. python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...
  3. 经典面试题-Linux Kernel面试题
  4. tomcat server.xml文件的配置解析
  5. python分布式爬虫系统_如何构建一个分布式爬虫:理论篇
  6. ASP.NET和C#中对XML的操作,以及简单的xml与xsl !
  7. Design Compiler指南——设计综合过程
  8. python 合并excel 自动更新_手把手教你4种方法用Python批量实现多Excel多Sheet合并
  9. 如何在多个SQL Server上执行作业
  10. CCNA实验前准备(转)
  11. 网络计算机amd,AMD多屏显示设置指南_计算机硬件和网络_IT /计算机_信息
  12. 蒙氏三段卡素材---蚂蚱三段卡
  13. git push时报错error: File: xxx 252.15 MB, exceeds 100.00 MB.
  14. Required field ‘client_protocol‘ is unset 原因探究
  15. 第三章习题2存款利息的计算
  16. P1055 [NOIP2008 普及组] ISBN 号码 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括99位数字、11位识别码和33位分隔符,其规定格式如x-xxx-xxxxx
  17. HTML怎么把图片占满表格,CSS解决表格或图片内容将页面撑开的办法
  18. 第一章 行列式 第四五节 对换/行列式的性质
  19. WoldPress从0开始建站(二):大哥你看我美不美
  20. 雄迈IPC引领智能化时代潮流

热门文章

  1. Git 配置网络代理
  2. LTE资源调度 -- 上行资源申请(1)BSR
  3. Golang 极速入门1小时版本
  4. httpd(阿帕奇)跟nginx的区别
  5. WRF运行流程-简易版
  6. 中国银行业存在三大金融风险隐患?
  7. 搭建自己的公司业务百科网页 1(安装DokuWiki)
  8. 分析计算机测色配色不准确的原因,实用技术∣如何有效利用电脑测色配色
  9. 腾讯安全助力高校信息安全建设,护航湾区教育高质量发展
  10. Java内功修炼系列一责任链模式