import matplotlib.pyplot as plt
import numpy as np
from lmfit.model import load_model
def mysine(x, amp, freq, shift):
return amp * np.sin(x*freq + shift)
data = np.loadtxt('sinedata.dat')
x = data[:, 0]
y = data[:, 1]
model = load_model('sinemodel.sav', funcdefs={'mysine': mysine})
params = model.make_params(amp=3, freq=0.52, shift=0)
params['shift'].max = 1
params['shift'].min = -1
params['amp'].min = 0.0
result = model.fit(y, params, x=x)
print(result.fit_report())
plt.plot(x, y, 'bo')
plt.plot(x, result.best_fit, 'r-')
plt.show()回溯(最近一次调用):
文件"C:\Users\MUHAMMAD ALI QURESHI\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py",第2910行,在run_code exec中(code_obj,self.user_global_ns,self.user_ns)
文件"",第4行,来自lmfit.model导入load_model
文件"C:\Users\MUHAMMAD ALI QURESHI\Anaconda3\lib\site-packages\lmfit__init__.py",第39行,来自.confidence导入conf_interval,conf_interval2d
文件"C:\Users\MUHAMMAD ALI QURESHI\Anaconda3\lib\site-packages\lmfit\confidence.py",第10行,来自.minimizer导入MinimizerException
文件"C:\Users\MUHAMMAD ALI QURESHI\Anaconda3\lib\site-packages\lmfit\minimizer.py",第34行,导入不确定
文件"C:\Users\MUHAMMAD ALI QURESHI\Anaconda3\lib\site-packages\uncertainties__init__.py",第224行,来自.core导入*
文件"C:\Users\MUHAMMAD ALI INF 2889 POSITIVE_DECIMAL_UNSIGNED_OR_NON_FINITE =ur‘((\d*)(.\d*)?|NAN|NAN|INF| QURESHI\Anaconda3\lib\site-packages\uncertainties\core.py",)’^ SyntaxError:无效语法
发布于 2019-03-10 11:34:51
我认为你需要重新安装uncertainties。看起来您拥有的代码正在使用Python2语法。
我认为uncertainties需要在安装时(自动)使用2to3 tool --看起来其中的某些部分对您不起作用。
它的工作应该是:
C:\.....\Anaconda3\Scripts\pip.exe install --force-reinstall uncertaintieshttps://stackoverflow.com/questions/55080776
复制相似问题