gpt4 book ai didi

python-3.x - Scipy.detrend : Function changes range of values

转载 作者:行者123 更新时间:2023-11-30 09:30:34 25 4
gpt4 key购买 nike

我正在尝试消除这个一维数组的趋势:

array([13.64352283, 13.48914862, 13.00767009, 13.35416524, 13.60143818,
13.40895156, 13.48349417, 13.65703125, 13.4959721 , 13.28891263,
12.97999066, 13.01112397, 12.79519705, 13.32030445, 13.19949068,
12.88691975, 13.32079707])

该函数运行时没有错误,但将值范围从 ~[12,14] 更改为 ~[-0.4,0.4]。我相信这是由于值的标准偏差较小而发生这种情况。有什么想法可以解决这个问题,以便我可以将带有趋势的数组和去趋势的数组绘制成一个图吗?标准化不是一种选择。

请帮忙。

最佳答案

嗯,这正是detrend作用:它减去输入的最小二乘线性近似值。

这是一个图来说明发生的情况:

from scipy import signal
import numpy as np
import matplotlib.pyplot as plt

y = np.array([13.64352283, 13.48914862, 13.00767009, 13.35416524, 13.60143818,
13.40895156, 13.48349417, 13.65703125, 13.4959721, 13.28891263,
12.97999066, 13.01112397, 12.79519705, 13.32030445, 13.19949068,
12.88691975, 13.32079707])
plt.plot(y, color='dodgerblue')
plt.plot(signal.detrend(y), color='limegreen')
plt.plot(y - signal.detrend(y), color='crimson')
plt.show()

图中的红线是从原始数据中减去以获得detrend(y)的线性近似值。

plot of detrend

关于python-3.x - Scipy.detrend : Function changes range of values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59546474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com