Python 基于样本的SciPy数值积分

Python 基于样本的SciPy数值积分,python,numpy,scipy,integral,Python,Numpy,Scipy,Integral,我有一组数据点(x,y),其中y=f(x)。样品相对于x的间距相等。我想让SciPy来近似积分 我试着用这个: data = np.genfromtxt('data', delimiter=";") y = data[:,1] x = data[:,0] def f(x, y): return (x**2)*(np.exp(np.negative(1.6886*y))) integral = integrate.simps(f, x) 我得到的结果毫无意义,我可能遗漏了一些huu

我有一组数据点(x,y),其中y=f(x)。样品相对于x的间距相等。我想让SciPy来近似积分

我试着用这个:

data = np.genfromtxt('data', delimiter=";")
y = data[:,1]  
x = data[:,0]
def f(x, y):
    return (x**2)*(np.exp(np.negative(1.6886*y)))
integral = integrate.simps(f, x)

我得到的结果毫无意义,我可能遗漏了一些huuuge点,但非常感谢任何帮助。

integrate.simps用于使用样本计算积分,但不用于单独计算函数。我认为你应该使用:

integral = integrate.simps(y, x)
e、 g

import scipy.integrate as inte
import numpy as np
x = np.linspace(0,2*np.pi, 100)
y = np.sin(x)**2
inte.simps(y,x)
>>> 3.1416352035913215