他のすべては正常に動作しますが、leasesq 関数を使用すると、pydev エディターに Undefined variable from import: leastsq what is going on here? というエラーが表示されます。
コードは、次の URL にある MIT の python コスト モデルの timing.pyです。 /readings/python-cost-model/timing.py と leastsq 部分は関数にあります:
def fit2(A,b):
""" Relative error minimizer """
def f(x):
assert len(x) == len(A[0])
resids = []
for i in range(len(A)):
sum = 0.0
for j in range(len(A[0])):
sum += A[i][j]*x[j]
relative_error = (sum-b[i])/b[i]
resids.append(relative_error)
return resids
ans = scipy.optimize.leastsq(f,[0.0]*len(A[0]))
# print "ans:",ans
if len(A[0])==1:
x = [ans[0]]
else:
x = ans[0]
resids = sum([r*r for r in f(x)])
return (x,resids,0,0)