gm(1、1)模型python代码_Matlab实现GM(1,1)模型(源代码)

本文介绍了GM(1,1)灰色模型的Python和Matlab实现,揭示其本质为线性回归。通过简化代码,作者指出灰色理论中的参数估计仅是线性拟合,批评了学术圈中的过度复杂化现象,鼓励读者理解问题实质并采用简洁方法。" 136706409,3389319,Java安卓面试精选题151-160解析,"['Java', 'Android开发', '面试准备', '技术面试', '编程语言']
摘要由CSDN通过智能技术生成

关于这个模型的介绍不想多说了,只是一个娱乐而已。下面是所有的代码,直接粘到你的M文件里面,然后跑就是了。 一分钱不收。

function [ simulation,params] = GM( org )

n=length(org);

%一次累加

for i=1:n

acc(i)=sum(org(1:i));

end

%计算背景值

for i=1:(n-1)

zk(i)=0.5*(acc(i)+acc(i+1));

end

%求解参数

params=polyfit(zk,org(2:end),1);

%计算模拟值

for i=1:n

if i==1

simulation(i)=org(1);

else

simulation(i)=(org(1)+params(2)/params(1))*(1-exp(-params(1)))*exp(params(1)*(i-1));

end

end

plot(1:n,org,'-o',1:n,simulation,'-*');

legend('原始序列','拟合序列');

细心的朋友应该会注意到一件事情:灰色预测模型里面不是有那么多矩阵运算吗,在这里怎么没有? 如果你跑了程序又会发现,这个程序计算出来的结果,跟任何一本书上写的结果完全一样。这是为啥嘞?

如果再细心点,会看到我这里获取参数的代码 :  para

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值