为什么scipy.signal.detrend
在相同的数据上给出略有不同的结果?此外,根据是否包含关键字“线性”,它似乎给出了不同的结果(默认情况下,去趋势无论如何都是线性的)
编辑:我知道不准确性非常小,并且由于浮点运算,预计会出现一些不准确性。奇怪的是,同样的数据+函数,结果却是不同的。
from scipy.signal import detrend as scipy_detrend
from pylab import *
x = arange(10)
y = arange(10, dtype='int64')
subplot(211)
plot(x, scipy_detrend(y, type="linear"), label='scipy detrend linear')
plot(x, scipy_detrend(y), label='scipy detrend')
plot(x, detrend(y, "linear"), label='pylab detrend')
subplot(212)
plot(x, scipy_detrend(y, type="linear"), label='scipy detrend linear')
plot(x, scipy_detrend(y), label='scipy detrend')
plot(x, detrend(y, "linear"), label='pylab detrend')
show()
注:红线为pylab.detrend
,蓝线为scipy.signal.detrend with linear keyword
,绿线为scipy.signal.detrend
。