线性拟合的百分比变化

时间:2019-12-20 10:49:45

标签: python regression

我的时间序列包含8年以上的每月数据。这是file,下面是数据示例。

Timestamp   data
2011-02-28  0.899749
2011-03-31  0.900395
2011-04-30  0.901033
2011-05-31  0.901663
2011-06-30  0.902283
2011-07-31  0.902895
2011-08-31  0.903497
2011-09-30  0.904089
2011-10-31  0.904670
2011-11-30  0.905240
2011-12-31  0.905798
2012-01-31  0.906344
2012-02-29  0.906876
2012-03-31  0.907396
2012-04-30  0.907903
2012-05-31  0.908397
2012-06-30  0.908878
2012-07-31  0.909348
2012-08-31  0.909808
2012-09-30  0.910258

绘制出全部数据的线性拟合后,显示下降。请看图表。

enter image description here

现在,我要以百分比计算年度下降率。
这些是我的尝试,全部基于文献:

# 1st method
y = ax + b
where a is slope and b is intercept.

annual_relative_change = (12*slope)/intercept

# 2nd method using Logarithmic Transformation in Linear Regression Models
percent_change = np.log(y) - np.log(y.iloc[0])

# 3rd method (pythonic one)
percent_change = df['data'].pct_change()

方法2和3产生完全相同的结果,这与方法1的结果完全不同。我不知道哪个是正确的(如果是其中之一)。任何帮助都会很棒。

0 个答案:

没有答案