【问题标题】:SciPy fitting gives an errorSciPy 拟合给出错误
【发布时间】:2019-01-11 19:04:39
【问题描述】:

我正在用实验数据拟合我的函数。函数太复杂了,我无法在此处发布,但我的拟合模块如下所示:

out_put = scipy.optimize.leastsq(func, initial parameter, full_output=True, ftol=0.001, xtol=0.001, gtol = 0.001)
fitter_sol = out_put[0]
error = np.sqrt(out_put[1].diagonal())

最后一行代码在执行中报错,错误如下:

AttributeError: 'NoneType' 对象没有属性 'diagonal'

这个错误的潜在来源是什么?

【问题讨论】:

  • 我相信你已经检查过out_put的内容了?
  • 试试“print(len(out_put))”,看看它是否至少有两个元素。
  • 您不能将其简化为一个仍然显示错误的独立示例(并将其添加到问题中)吗?

标签: python scipy curve-fitting data-fitting


【解决方案1】:

文档说leastsq 的第二个结果是:

如果遇到奇异矩阵则无(表示某个方向的曲率非常平坦)。

所以你的输入是一个奇异矩阵。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-16
    • 1970-01-01
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    相关资源
    最近更新 更多