1.画散点图:
选择要预测的数据,绘制散点图,如下图所示;
2.添加趋势线:
选择一个点,单击右键,选择添加趋势线;
3.选择预测的函数:
从散点图上可以看出,点呈现指数增长形势;选择指数。同时勾选显示公式(很重要),点击确定。
4.计算预测值:
将公式输入到第三列,求值,可以看到实际值与预测值之间的差值,如果要预测,只要在数据基础上输入变量,如图中的8,即可预测出预测值。
A=dlmread('data1.txt')P=A(1:end,:)T=A(end,:)
Max=max(P)Min=min(P)
P=cat(2,(P(:,1)-Min(1))./(Max(1)-Min(1)),(P(:,2)-Min(2))./(Max(2)-Min(2)))
net=newelm(minmax(P),[20,1],{'tansig','purelin'},'traingdm')
net.trainParam.epochs = 50
net=train(net,P,T)
Y=sim(net,P)
figure(2)
plot(A(:,1),A(:,2),T(1),T(2),'*')
因为你没有给出更加详细的信息所以我只能大概编一个函数,如果需要更加详细的话,请在追问中详细说明。function ans = meanWeight(data,weight)
data = data(:)
weight = weight(:)
n = size(data)
n = n(1)
ans = data'*weight
end
你将以上的保存在一个m文件中,然后在命令窗口meanWeight(data,weight)即可得到结果,其中data为前五天的数据,weight为前五天对应的权重。例如:前五天数据为从一到五,权重都取为相同的0.2,则你可在命令窗口运行以下代码:
weight = ones(1,5)/5.0
data = 1:5
meanWeight(data,weight)
即可得到答案
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)