Python Integration, Interpolation, and Curve Fitting

preview_player
Показать описание
iPython Notebook, using numpy and scipy interpolation, integration, and curve fitting functions
Рекомендации по теме
Комментарии
Автор

After all these year, you video is still amazingly helpful! Thank you for your hard work

mokus
Автор

Really enjoyed your clear tutorial. I'm using this to help me fit spectra peaks from astronomical data to gaussian curves. Will hopefully impress my professor. Much thanks!

jawnvawn
Автор

A very good video, just what I needed to quickly get going on a work problem I currently have, using nothing but the packages that already come installed in anaconda. Good work.

jimwest
Автор

Thank you very much! I couldn't find this anywhere, you saved me

AlexOmbla
Автор

Hello, would it be possible to get a pdf of the data shown on the video?

yurivendruscolo
Автор

Great video, very well explained thanks

clivemayo
Автор

This was a superb tutorial, I was wondering if you have or can make a video explaining how to make the r squared value for the curve fitted function you made at 14:08

skfkfkd
Автор

As a Python newbie, I found this tutorial fantastic for an analysis I am currently undertaking. What is missing though, is the code necessary for goodness of fit. I can't figure out how to do this - can anybody help?

davidmckinnon
Автор

I have a question about the last fitting you did. Those command lines make the fit with minimum squares? (sorry for my english)

MartinezF
Автор

I like it, but I was looking for some tutorials that explain me how can I use the covariance matrix, that in your tutorial is reported at the end of it as "extras" in the "curve_fit" output, and still I can't find anyone who explain me it

stefanofedele
Автор

Thank you. Is there a downloadable of this notebook?

shobanasanthanagopalan
Автор

What if the function have been integrated by .quad and sub into another non-analytical function to get two sets of array, and I want to do curve fitting of that with test data?

frankelindddd
Автор

How about using numpy corrcoef? at curve fitting id just enter p3 as parameter of it

Satenc
Автор

At the end of the function, why do you put dx, has it any use?

aamira
Автор

Where I can found that example notebook?

Passco
Автор

import numpy as np
import matplotlib.pyplot as plt
% matplotlib inline
from scipy.integrate import quad

def f(x):
return 3.0*x*x+ 1.0
xlo=0
xhi=1
I, err=quad(f, xlo, xhi)
print("I =", I)
print("err =", err)

from scipy.interpolate import interp1d

x_given= np.linspace(0, 10, 10)


xx= np.linspace(0, 10, 1000)
yy=np.cos(xx**2.0/8.0)

plt.plot(x_given, y_given, "o", label="given data")
plt.plot(xx, yy, ":", label="perf")
plt.legend(loc='best')


x_i=np.linspace(0, 10, 1000)
f_linear=interp1d(x_given, y_given)
y_li=f_linear(x_i)

f_spline=interp1d(x_given, y_given, kind='cubic')
y_is=f_spline(x_i)

#plot
plt.plot(x_given, y_given, "o", label='given data')
plt.plot(x_i, y_li, '-', label='linear')
plt.plot(x_i, y_is, '--', label='spline')
plt.plot(xx, yy, ":", label='perf')
plt.legend(loc='best')

x_given=np.array([0., 1., 2., 3., 4., 5.])
y_given=np.array([0., 0.8, 0.9, 1.0, -0.8, -1.0])
x_p=np.linspace(-2.0, 6.0, 100)
p_3=np.polyfit(x_given, y_given, 3)
y_p=np.polyval(p_3, x_p)

plt.plot(x_given, y_given, "o")
plt.plot(x_p, y_p, '-')
plt.legend(['data', 'polyfit'], loc='best')
plt.ylim(-2, 2)

from scipy.optimize import *

def f(x, a, b, c):
return a*np.exp(-b*x)+c
x_given=np.linspace(0, 4, 50)
y_given=f(x_given, 2.5, 1.3, 0.5)+0.2*np.random.normal(size=len(x_given))

params, extras=curve_fit(f, x_given, y_given)
print('a=%g, b=%g, c=%g' %(params[0], params[1], params[2]))
y_fit=f(x_given, params[0], params[1], params[2])

#plots
plt.plot(x_given, y_given, "o")
plt.plot(x_given, y_fit, "-")
plt.legend(['data', 'fit'], loc='best')

sambad