纸做的花朵成品网站,制作网站的公司叫什么,wordpress 分享 赞,网页二级网站怎么做为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能#xff0c;从而更快地掌握解决问题所需的能力。
#xff08;以下练习题来源于《统计学—基于Python》。请在Q群455547227下载原始数据。#xff09; 练习题
下表是某只股票…为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能从而更快地掌握解决问题所需的能力。
以下练习题来源于《统计学—基于Python》。请在Q群455547227下载原始数据。 练习题
下表是某只股票连续35个交易日的收盘价格前3行和后3行。 1分别采用m5和m10对收盘价格进行平滑并绘制实际值和平滑值的图形进行比较。
2分别采用以下方法进行预测并绘制预测图和残差图对结果进行比较。 a简单指数平滑和Holt指数平滑 b一元线性回归和指数曲线 c二阶曲线和三阶曲线。 图形绘制与分析
本文就2c题展开分析。
2c收盘价的二阶和三阶曲线预测
有些现象的变化形态比较复杂它们不是按照某种固定的形态变化而是有升有降在变化过程中可能有几个拐点这时就需要拟合多项式函数。当只有一个拐点时可以拟合二阶曲线即抛物线当有两个拐点时需要拟合三阶曲线当有k一1个拐点时需要拟合k阶曲线。
建立二阶曲线模型和三阶曲线模型
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from statsmodels.formula.api import ols
plt.rcParams[font.sans-serif] [Songti SC]
plt.rcParams[axes.unicode_minus] False
df pd.read_csv(exercise11_1.csv)# 拟合二阶曲线模型model2和三阶曲线模型model3
df[t] df[时间]-1
model2 ols(收盘价 ~ t pow(t, 2), data df).fit() # 拟合二阶曲线
model3 ols(收盘价 ~ t pow(t, 2) pow(t, 3), data df).fit() # 拟合三阶曲线# 计算二阶曲线和三阶曲线的预测值和残差
df_pre pd.DataFrame({时间:df[时间], 收盘价:df[收盘价], 二阶曲线预测值:model2.fittedvalues, 二阶曲线残差:model2.resid,三阶曲线预测值:model3.fittedvalues, 三阶曲线残差:model3.resid})
df_pre.loc[35, 时间] 36
df_pre df_pre.astype({时间:int})
df_pre.loc[35, 二阶曲线预测值] model2.predict(exog dict(t 36)).values
df_pre.loc[35, 三阶曲线预测值] model3.predict(exog dict(t 36)).values
round(df_pre,2)
显示前16行结果 绘制实际值和预测值曲线
# 实际值和预测值曲线
# 图a预测图
plt.subplots(1, 2, figsize (11, 4))
plt.subplot(121)
l1 plt.plot(df_pre[收盘价], marker o, linewidth 1)
l2 plt.plot(df_pre[二阶曲线预测值], marker , ls -, linewidth 1)
l3 plt.plot(df_pre[三阶曲线预测值], marker *, ls -., linewidth 1)plt.axvline(34, ls --, c grey, linewidth 1)
plt.xticks(range(0, 35, 2), df_pre[时间][::2])
plt.xlabel(时间, size 12)
plt.ylabel(收盘价, size 12)
plt.legend([收盘价, 二阶曲线预测值, 三阶曲线预测值], prop {size:11})
plt.title((a)收盘价的二阶和三阶曲线预测, size 13)# 图b残差图
plt.subplot(122)
plt.scatter(range(len(df_pre[二阶曲线预测值])), df_pre[二阶曲线残差], marker )
plt.scatter(range(len(df_pre[二阶曲线预测值])), df_pre[三阶曲线残差], marker *, linewidth 1)
plt.hlines(0, 0, 35, linestyle --, color red, linewidth 1)plt.xticks(range(0, 35, 2), df_pre[时间][::2])
plt.xlabel(时间, size 12)
plt.ylabel(残差, size 12)
plt.legend([二阶曲线残差, 三阶曲线残差], prop {size:11})
plt.title((b)二阶曲线和三阶曲线预测残差, size 13)
plt.tight_layout() 左图展示了收盘价的实际值和二阶和三阶曲线的拟合值。从图形上看三阶曲线拟合效果较少。右图显示二阶曲线的预测残差和三阶曲线的预测残差总体上看没有明显的固定模式。同时三阶曲线的预测残差较二阶曲线残差小一些说明三阶曲线预测更加合理。 都读到这里了不妨关注、点赞一下吧