2013-04-05 5 views
0

다른 모든 기능은 작동하지만 leasesq 함수를 사용하면 pydev 편집기에 다음과 같은 오류가 있습니다. 가져 오기에서 정의되지 않은 변수 : leastsq 여기서 무슨 일이 일어나고 있습니까?scipy.optimize.leastsq를 사용하는 데 문제가 있습니다

코드는 URL에서 MIT의 파이썬 비용 모델 timing.py입니다 : http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/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) 
+0

코드를 게시하십시오. – Blender

+0

코드를 실행할 때 문제가 있습니까? –

+0

이 오류로 인해 코드를 실행할 수 없습니다 – Vamston

답변

0

그것은 나에게 보인다 당신은 LSQ 기능을 제공하고 있음 두 개의 키워드 인수가 필요하지만 세 개가 필요합니다. 함수, 초기 값을 제공하지만 LSQ가 만들어지는 실제 값은 제공하지 않습니다.

관련 문제