AttributeError: 'Funktion' Objekt hat kein Attribut 'implizit', wenn versucht wird, Scipy ODR zu verwenden
Posted: 23 Feb 2025, 15:31
Ich versuche, Daten mit scipy.odr in einem Jupyter -Notizbuch anzupassen, aber ich erhalte immer wieder einen AttributeError. Der relevante Code ist unten, < /p>
Ich habe keine Ahnung, wie ich damit beginnen soll, und soweit ich diesen Fehler erkennen kann>
Code: Select all
from scipy.odr import *
def linear(U_0, x):
return U_0[0]*x + U_0[1]
linear_model = Model(linear)
quadratic_data = RealData(angle_squared, flattened_velocity, sx=angle_error_squared, sy=flattened_velocity_error)
quadratic_odr = ODR(quadratic_data, linear, beta0=[1,0])
< /code>
Wenn ich versuche, meinen Code auszuführen, gibt der folgende Fehler zurück: < /p>
AttributeError Traceback (most recent call last)
Cell In[25], line 13
10 quadratic_data = RealData(angle_squared, flattened_velocity, sx=angle_error_squared, sy=flattened_velocity_error)
11 cubic_data = RealData(angle_cubed, flattened_velocity, sx=angle_error_cubed, sy=flattened_velocity_error)
---> 13 quadratic_odr = ODR(quadratic_data, linear, beta0=[1,0])
14 cubic_odr = ODR(cubic_data, linear, beat0=[1,0])
16 quadratic_output = quadratic_odr.SO.run()
File ~/.local/lib/python3.12/site-packages/scipy/odr/_odrpack.py:789, in ODR.__init__(self, data, model, beta0, delta0, ifixb, ifixx, job, iprint, errfile, rptfile, ndigit, taufac, sstol, partol, maxit, stpb, stpd, sclb, scld, work, iwork, overwrite)
785 self.iwork = _conv(iwork)
787 self.output = None
--> 789 self._check()
File ~/.local/lib/python3.12/site-packages/scipy/odr/_odrpack.py:800, in ODR._check(self)
798 if isinstance(self.data.y, np.ndarray):
799 y_s = list(self.data.y.shape)
--> 800 if self.model.implicit:
801 raise OdrError("an implicit model cannot use response data")
802 else:
803 # implicit model with q == self.data.y
AttributeError: 'function' object has no attribute 'implicit'