微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在python中计算不正确的积分?

如何解决如何在python中计算不正确的积分?

如何计算该积分的值:

enter image description here

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

enter image description here

我该如何实现? 我能找到的一切看起来都像这样

from scipy.integrate import quad
def f(x):
    return 1/sin(x)
I = quad(f,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,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,np.Infinity)) #integrates from 0 to infinity

这将返回两个值。第一个是积分的估计值,第二个是积分的近似绝对误差,这很有用。

,

如果要集成一个numpy数组,这是一个简单的解决方案:

import numpy as np

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。