J'essaie d'adapter mes données à (cos(x))^n
. La valeur de n
en théorie est 2, mais mes données devraient me donner environ 1,7. Quand je définis ma fonction d'ajustement et j'essaie curve_fit
, je reçois une erreurAjustement de courbe avec erreur python
def f(x,a,b,c):
return a+b*np.power(np.cos(x),c)
param, extras = curve_fit(f, x, y)
Voici mes données
x y error
90 3.3888756187 1.8408898986
60 2.7662844365 1.6632150903
45 2.137309503 1.4619540017
30 1.5256883339 1.2351875703
0 1.4665463518 1.2110104672
L'erreur ressemble à ceci:
/usr/local/lib/python3.5/dist-packages/ipykernel_launcher.py: 4: RuntimeWarning: valeur non valide rencontrée dans l'alimentation après la suppression de le fichier cwd de sys.path.
/usr/lib/python3/dist-packages/scipy/optimize/minpack.py:690: OptimizeWarning: Covariance des paramètres ne peut pas être estimée
catégorie = OptimizeWarning)
Y at-il encore quelque chose qui manque/ne fonctionne pas? Si oui, laissez-moi savoir que je peux modifier ma réponse, sinon, s'il vous plaît envisager d'upvote et accepter la réponse si elle a résolu votre problème :) – Cleb
Tout d'abord, merci beaucoup, c'était vraiment utile. Le problème était que les données x étaient en degrés et il devrait être en radians. A part cela, j'ai appris à utiliser * popt pour appeler tous les éléments du tableau, donc c'était génial! –