2011-11-26 58 views
13

Estoy tratando de ajustar algunos datos y esas cosas, sé que hay un comando simple para hacer esto con python/numpy/matplotlib, pero no puedo encontrarlo. Creo que es algo así comoajuste de curva con python

popt,popc = numpy.curvefit(f,x) 

donde es popt los parametros de f, popc es la calidad en forma y f es una función predefinida de f. ¿Alguno de ustedes lo sabe?

+1

Si se trata de una solución única, es más fácil simplemente conectar los valores en el buscador de funciones en http://zunzun.com/ y dejar que encuentre la mejor curva coincidente. Su código Python está disponible también. – endolith

Respuesta

28

Tome un vistazo a scipy.optimize.curve_fit:

scipy.optimize.curve_fit (f, XDATA, ydata, p0 = Ninguno, sigma = Ninguno, ** kw)

Use mínimos cuadrados no lineales para ajustar una función, f, a los datos.

+0

Una pregunta: ¿hay alguna manera fácil de obtener el valor de R cuadrado de curve_fit, o obtener SSE para poder calcular R-squared? Puedo hacer un trabajo y hacerlo en scipy.optimize.leastsq, pero el código será mucho más detallado. –

0

Found it. Curve_fit from optimize in scipy

+0

¿No es esta respuesta un duplicado de la respuesta aceptada? –

Cuestiones relacionadas