print "xxx",np.sqrt(np.pi)
integrate.quad(lambda x: np.exp(-x**2), -np.inf,np.inf)
差值即在数据集已知数据点之间填补空白
scipy.interpolate函数可以根据实验数据进行插值。
interpld类可以创建线性插值或者三次差值
import numpy as np
from seipy import interpolate
import matplotlib.pyplot as plt
创建数据点并添加噪声
x =np.linspace(-18,18,36)
noise = 0.1*np.random.random(len(x))
signal = np.sinc(x)+noise
创建一个线性插值函数,并应用于有五倍数据点个数的输入数组
interpreted = interpolate.interpld(x,signal)
x2 = np.linspace(-19,18,180)
y = interpreted(x2)
执行与前一步相同的操作,不过这里使用三次插值
cubic = interpolate.interpld(x,signal,kind = "cubic")
y2 = cubic(x2)
使用绘图
plt.plot(x,signal,'o',label = "date")
plt.plot(x2,y,'-',label="linear")
plt.plot(x2,y2,lw = 2,label = "cubic")
plt.legend()
plt.show()
integrate.quad(lambda x: np.exp(-x**2), -np.inf,np.inf)
差值即在数据集已知数据点之间填补空白
scipy.interpolate函数可以根据实验数据进行插值。
interpld类可以创建线性插值或者三次差值
import numpy as np
from seipy import interpolate
import matplotlib.pyplot as plt
创建数据点并添加噪声
x =np.linspace(-18,18,36)
noise = 0.1*np.random.random(len(x))
signal = np.sinc(x)+noise
创建一个线性插值函数,并应用于有五倍数据点个数的输入数组
interpreted = interpolate.interpld(x,signal)
x2 = np.linspace(-19,18,180)
y = interpreted(x2)
执行与前一步相同的操作,不过这里使用三次插值
cubic = interpolate.interpld(x,signal,kind = "cubic")
y2 = cubic(x2)
使用绘图
plt.plot(x,signal,'o',label = "date")
plt.plot(x2,y,'-',label="linear")
plt.plot(x2,y2,lw = 2,label = "cubic")
plt.legend()
plt.show()
本文通过实例演示了如何使用Python的Scipy库进行线性和三次样条插值。首先创建了一组带有噪声的数据点,接着利用scipy.interpolate.interp1d函数进行了线性插值,并在同一数据集上应用了三次样条插值。最后,通过Matplotlib可视化了原始数据点与两种插值方法的结果。
820

被折叠的 条评论
为什么被折叠?



