- 积分
- 455
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2018-8-28
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 healer001 于 2019-4-2 20:35 编辑
去趋势我们可以在Python中实现,使用scikit-learn LinearRegression模型
原数据文件不论是excel还是txt存储 ,先要转成csv
去趋势之后同样存储成csv文件
from pandas import read_csv
from pandas import datetime
from matplotlib import pyplot
from sklearn.linear_model import LinearRegression
from matplotlib import pyplot
import numpy
import pandas as pd
series = read_csv('11.csv',
header = 0,
parse_dates=[0],
index_col=0,
squeeze=True)
X = [i for i in range(0, len(series))]
X = numpy.reshape(X,(len(X), 1))
y = series.values
model = LinearRegression()
model.fit(X,y)
trend = model.predict(X)
pyplot.plot(y)
pyplot.plot(trend)
pyplot.show()
detrended = [y-trend for i in range(0, len(series))]
d=[y-trend for i in range(0, len(series))]
pyplot.plot(detrended)
t=pd.DataFrame(data=d)
t.to_csv('D:\detrended.csv')
pyplot.show()
本帖主要参考 https://blog.csdn.net/Goldxwang/article/details/76198404
本帖没有解决的问题:
如何修改生成图片的x轴,我明明数据里第一列是1979-2014的年份信息,出图后是序号0-35?
欢迎大家一起讨论交流~
|
-
去趋势之后的时间序列
-
去趋势之前的时间序列
-
原数据文件-SublimeText
-
python导出数据到csv文件
-
-
678ave.csv
622 Bytes, 下载次数: 12, 下载积分: 金钱 -5
原数据
-
-
q.py
726 Bytes, 下载次数: 14, 下载积分: 金钱 -5
去趋势程序
|