如何计算 python 中的错误积分?

How to calculate improper integral in python?

如何计算这个积分的值:

f_tu(t) 给出为 numpy.array。该图如下所示:

我该如何实施? 我能找到的所有东西看起来都像这样

from scipy.integrate import quad
def f(x):
    return 1/sin(x)
I = quad(f, 0, 1)

但我那里有一个数组,而不是像 sin.

这样的特定函数

来自 sklearn.metrics 的 auc 怎么样?

import numpy as np

import numpy as np

from scipy.integrate import quad

from sklearn.metrics import auc

x = np.arange(0, 100, 0.001)
y = np.sin(x)

print('auc:', auc(x,y))

print('quad:', quad(np.sin, 0, 100))

auc: 0.13818791291277366
四边形:(0.1376811277123232,9.459751315610276e-09)

好的,所以你有了那些讨厌的无穷大积分之一。以下是我的处理方式:

import numpy as np
from scipy.integrate import quad

def f(x):
return(1/(x**2)) #put your function to integrate here

print(quad(f,0,np.Infinity)) #integrates from 0 to infinity

这returns两个值。第一个是积分的估计值,第二个是积分的近似绝对误差,知道有用。

如果你想集成一个 numpy 数组,这里有一个简单的解决方案:

import numpy as np

print(np.trapz(your numpy array here))