- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Python 中使用 lmfit
来拟合一些数据,其中包括拟合变量 a、b 和 c。我需要确保 a < b < c。我找到了 http://cars9.uchicago.edu/software/python/lmfit_MinimizerResult/constraints.html其中谈到需要将约束定义为不等式并设置虚拟变量。例如,如果我想要 a + b <= 10,我可以这样做:
pars.add('a', value = 5, vary=True)
pars.add('delta', value = 5, max=10, vary=True)
pars.add('b', expr='delta-a')
这将确保 a + b <= 10。
我想我需要 c - b > 0 和 b - a > 0(或者 a - b < 0 和 b - c < 0),但我不确定如何编码。
最佳答案
根据您链接到的文档的提示,x > y
的不等式约束应转换为 x = y + something
其中 something
的下限为 0。
因此,应用该方法两次,我认为这应该可以满足您的要求:
from lmfit import Parameters
params = Parameters()
params.add('a', value=5, vary=True)
params.add('b_minus_a', value=1, vary=True, min=0)
params.add('c_minus_b', value=1, vary=True, min=0)
params.add('b', expr='a + b_minus_a')
params.add('c', expr='b + c_minus_b')
仍然使用三个变量(a
、b_minus_a
和 c_minus_b
)并施加不等式约束,需要注意的是,差异实际上可能为 0。对于 float ,这通常就足够了,但根据变量的规模,您可以将 0 更改为类似 1.e-12
的内容。
关于Python lmfit 约束 : a < b < c,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49931455/
我是 python 的新手,并尝试使用 lmfit 包来检查我自己的计算,但是我不确定 (1) 如何为以下测试(和 2)包含数据(sig)的错误我在 conf_interval2d 中遇到的错误如下所
我正在尝试使用 lmfit 使用 Model 和 Parameters 类查找某些随机数据的函数的最佳拟合参数。然而,它似乎并没有太多地探索参数空间。它进行了约 10 次函数评估,然后返回了糟糕的拟合
我正在尝试使用 lmfit 拟合部分数据(应该看起来像高斯),但我得到了一条线。请参见下图。 数据绘图: 我尝试过的代码如下: import matplotlib.pyplot as plt from
这是一个关于从 lmfit fit_report()( 1) 对象中提取拟合统计信息的问题 在this lmfit 示例,返回如下部分输出: [[Model]] Model(gaussian)
import matplotlib.pyplot as plt import numpy as np from lmfit.model import load_model def mysine(x,
我试图弄清楚如何使用 lmfit 进行截距估计包会产生不同的结果,具体取决于起始值。我使用 statsmodels 将估计结果与标准 OLS 估计结果进行比较。有人可以帮忙吗? 代码: from lm
我正在尝试使用 LMFIT 库进行多洛伦兹拟合,但它不起作用,我什至理解我的语法made 是完全错误的,但我没有任何新的想法。 我的问题是这样的:我有一个很长的光谱,其中包含多组峰,但这些组中峰的数量
在逼近(负)指数函数时,lmfit 的指数模型如何工作? 以下尝试关注https://lmfit.github.io/lmfit-py/model.html ,但未能提供正确的结果: mod = lm
我正在使用 lmfit python 包进行非线性优化 (url: http://lmfit.github.io/lmfit-py/)。我想知道在使用最小二乘拟合方法时是否可以传递雅可比函数?如果是,
尝试从 lmfit 拟合 ExponentialGaussianModel() 但收到以下错误消息:The input contains nan values 我在 Windows 上使用 Jupyt
我正在尝试使用 lmfit 拟合一些数据。最初,我使用了 Model 类,它基于此示例/教程运行良好: https://lmfit.github.io/lmfit-py/model.html但后来我想
我正在使用 lmfit 在 python 中进行拟合,在定义模型(即我想要用于拟合的函数)之后,我执行 out = model.fit(...)为了可视化结果,我这样做 plt.plot(x, out
我正在尝试将曲线拟合到一些数据(模型将是 3 个高斯加背景)。数据位于这篇文章的底部(不知道如何附加它),列是(x,y,err_y),err_y是y的平方根。这是我的代码: import numpy
我正在尝试使用 lmfit 包拟合一组数据。作为最小化例程,我选择了 Differential_evolution ( https://docs.scipy.org/doc/scipy-0.17.0/
有没有办法基于具有任意数量因变量的函数构建 lmfit 模型?例如: from lmfit import Model def my_poly(x, *params): func = 0 for
我在 Python 中使用 lmfit 来拟合一些数据,其中包括拟合变量 a、b 和 c。我需要确保 a 0 和 b - a > 0(或者 a - b y 的不等式约束应转换为 x = y + s
我想使用最小二乘法 (Levenberg-Marquardt) 最小化函数 f 中的 x 和 y。在 Python 中,我可以像下面这样使用 lmfit params = lmfit.Paramete
输出错误是: 最小化异常:如果没有合理的不确定性估计,则无法确定置信区间 为什么我收到这个错误?我如何计算不确定性估计并解决这个问题? for dosya1 in glob.glob("mean*")
我正在使用Python lmfit对 2005-2016 年的月平均数据进行最小二乘拟合。我构建了如下所示的函数: equation原始代码如下: # t is in fractional years
我正在尝试将模型拟合到某些数据。自变量称为 A 和 B,它们是 Pandas DataFrame 中的列。我正在尝试根据数据框中的 y 调整两个参数。 以前,使用 Scipy 的 curve_fit,
我是一名优秀的程序员,十分优秀!