我想用 scipy 对一些数据拟合对数函数。
不幸的是,我收到以下错误:无法估计参数的协方差
我怎样才能防止这种情况?
import numpy as np
import scipy.optimize as opt
import matplotlib.pyplot as plt
x = [0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0]
y = [0.073, 2.521, 15.879, 48.365, 72.68, 90.298, 92.111, 93.44, 93.439, 93.389, 93.381, 93.367, 93.94, 93.269, 96.376]
def f(x, a, b, c, d):
return a / (1. + np.exp(-c * (x - d))) + b
(a_, b_, c_, d_), _ = opt.curve_fit(f, x, y)
y_fit = …Run Code Online (Sandbox Code Playgroud)