站上的代码我学习调整过后如下,但是只能预测10-20年的,我想实现从第二年开始就进行预测,该如何调整代码?我预想的是在for循环里面去实现,但是不清楚具体应该怎么去编写代码
data=[272,280,284,282,310,370,568,541,642,588];
n=length(data);
alpha=0.3; % alpha大小,可以根据数据特点自行设定
S0=mean(data(1:3));
St1_0=S0; St2_0=St1_0;St3_0=St1_0; %数据量小于20初始值取前三项平均值
St1=alphadata(1)+(1-alpha)St1_0;
St2=alphaSt1(1)+(1-alpha)St2_0;
St3=alphaSt2(1)+(1-alpha)St3_0;
for i=2:n+10 %预测未来10年的数据
St1=alphadata(i)+(1-alpha)St1;
St2=alphaSt1+(1-alpha)St2;
St3=alphaSt2+(1-alpha)St3;
At=3St1-3St2+St3;
Bt=0.5alpha/(1-alpha)^2((6-5alpha)St1-2(5-4alpha)St2+(4-3alpha)St3);
Ct=0.5alpha^2/(1-alpha)^2*(St1-2*St2+St3);
data(i)=[At+Bt+Ct]
end
plot(1:n+10,data)
title('全社会最大用电量预测(基于指数平滑预测)')
xlabel({'年份','(年)'})
ylabel({'最大用电量','(MW)'})
set(gca,'Xtick',1:20)
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答
本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。
因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。