【发布时间】:2020-09-22 20:04:58
【问题描述】:
我有一个 X(x) 和 Y(signal) 数据列表,用于计算波谷:
from scipy.signal import find_peaks
troughs, _= find_peaks(-signal)
现在我想计算第一个波谷和最后一个波谷之间的积分
from scipy.interpolate import InterpolatedUnivariateSpline
x = range(1,len(signal)+1)
f = InterpolatedUnivariateSpline(x, y)
f.integral(peaks[1], peaks[-1])
which gives me: -1.477
假设这个值为负数与它正在计算积分的事实是一致的。但是曲线下面积呢?我们知道它们彼此不相等,因为积分可能是负数,但 AUC 不能。 有没有简单的方法来计算两个不同点之间的 AUC?我能想到的一种方法是将 Y 分为负数和非负数组,并分别对每个组进行积分。
【问题讨论】:
标签: python numpy scikit-learn scipy integral