建模之数据处理常用方法

2023-05-16

灰色系统模型

灰色系统模型在数据处理和预测中经常使用。
灰色系统理论建模特点:原始数据必须等时间间距。
处理思路:首先对原始数据进行累加,弱化原始时间序列数据的随
机因素.然后建立生成数的微分方程。
GM(1,1)模型是灰色系统理论中的单序列一阶灰色微分方程

 

 

 

 

 Matlab实现程序


%1997--2003年数据
A=[83.0, 79.8,78.1,85.1,86.6,88.2,90.3,86.7,93.3,92.5,90.9,96.9;
101.7,85.1,87.8,91.6,93.4,94.5,97.4,99.5,104.2,102.3,101.0,123.5;
92.2,114.0,93.3,101.0,103.5,105.2,109.5,109.2,109.6,111.2,121.7,131.3;
105.0,125.7,106.6,116.0,117.6,118.0,121.7,118.7,120.2,127.8,121.8,121.9;
139.3,129.5,122.5,124.5,135.7,130.8,138.7,133.7,136.8,138.9,129.6,133.7;
137.5,135.3,133.0,133.4,142.8,141.6,142.9,147.3,159.6,162.1,153.5,155.9;
163.2,159.7,158.4,145.2,124,144.1,157.0,162.6,171.8,180.7,173.5,176.5];
T=A(1:6,1:12);
x0=mean(T');%对前6年求平均
x1=zeros(size(x0));
n=length(x0);
x1(1)=x0(1);
for i=2:n
x1(i)=x1(i-1)+x0(i); %累积求和
end
z=zeros(size(x0));
af=0.4; %参数
for i=2:n
z(i)=af*x1(i)+(1-af)*x1(i-1);
end
Y=zeros(n-1,1); B=zeros(n-1,2);
for i=2:n
Y(i-1,1)=x0(i);
B(i-1,1)=-z(i);
B(i-1,2)=1;
end
Para=inv(B'*B)*B'*Y; %计算参数
a=Para(1);
b=Para(2);
Pred=(x0(1)-b/a)*exp(-a*n)*(1-exp(a));
%预测第n+1年数值(2003年)
Total=12*Pred; %2003年总平均值
%估计各月所占比重;
r=sum(T)/sum(sum(T));
%预测2003年各月销售量
Px=Total*r;
fprintf('输出2003年预测值与实际值.\n');
for i=1:12
fprintf('%5d ',i);
end
fprintf('\n');
for i=1:12
fprintf('%6.1f ',Px(i)); %输出2003年预测值
end
fprintf('\n');
for i=1:12
fprintf('%6.1f ',A(7,i)); %输出2003年实际值
end
fprintf('\n');
Error=sum(Px(4:6))-sum(A(7,4:6));
fprintf('2003年4,5,6月SARS导致减少销售额%6.2f亿元\n',Error);
%作图
subplot(2,1,1);
PA=[A(1,:),A(2,:),A(3,:),A(4,:),A(5,:),A(6,:),A(7,:)];%变为一行数据
plot(PA); grid on
title('原始数据');
subplot(2,1,2);
plot(1:12,A(7,:),'b*',1:12,Px,'r');
title('2003年对比数据');
grid on

 

 

 

 三、实例计算
根据某地6年每年12个月的交通死亡数据。预测未来一年每个月的交通死亡人数。数据见表一。

 

 Matlab程序


x=[9007,8106,8928,9137,10017,10826,11317,10744,9713,9938,9161,8927,7750,6981,8038,8422,8714,9512,10120,9823,8743,9129,8710,8680,8162,7306,8124,7870,9387,9556,10093,9620,8285,8433,8160,8034,7717,7461,7776,7925,8634,8945,10078,9179,8037,8488,7874,8647,7792,6957,7726,8106,8890,9299,10625,9302,8314,8850,8265,8796,7836,6892,7791,8129,9115,9434,10484,9827,9110,9070,8633,9240];
D=[9007,8106,8928,9137,10017,10826,11317,10744,9713,9938,9161,8927;
7750,6981,8038,8422,8714,9512,10120,9823,8743,9129,8710,8680;
8162,7306,8124,7870,9387,9556,10093,9620,8285,8433,8160,8034;
7717,7461,7776,7925,8634,8945,10078,9179,8037,8488,7874,8647;
7792,6957,7726,8106,8890,9299,10625,9302,8314,8850,8265,8796;
7836,6892,7791,8129,9115,9434,10484,9827,9110,9070,8633,9240];
aver=mean(D');
st=zeros(6,12);
for i=1:6
for j=1:12
st(i,j)=D(i,j)-aver(i);
end
end
NST=zeros(1,12);
nst=sum(st)/6; %对6年月平均作为st的估计
nx=zeros(72,1);
for i=1:6
for j=1:12
k=(i-1)*12+j; nx(k)=x(k)-nst(j);
end
end
%对消去季节项后数据nx
%进行线性拟合并预测
Y=zeros(72,1);
A=zeros(72,2);
for i=1:72
Y(i)=nx(i);
A(i,1)=1; A(i,2)=i;
end
coef=inv(A'*A)*A'*Y;
py=zeros(1,84);
for i=1:84
py(i)=coef(1)+coef(2)*i;
end
subplot(2,1,1);
plot(1:72,nx,1:72,py(1:72));
xx=zeros(1,84);
for i=1:7
for j=1:12
k=(i-1)*12+j;
xx(k)=py(k)+nst(j); %预测各月数值
end
end
subplot(2,1,2);
plot(1:72,x,'*',1:84,xx);

 

 神经网络

 

 

 

 

 

 

x=[1.24,1.36,1.38,1.38,1.38,1.40,1.48,1.54,1.56,1.14,1.18,1.20,1.26,1.28,1.30;
1.72,1.74,1.64,1.82,1.90,1.70,1.82,1.82,2.08,1.78,1.96,1.86,2.0, 2.0,1.96];
y=[1,1,1,1,1,1,1,1,1,0,0,0,0,0,0;
0,0,0,0,0,0,0,0,0,1,1,1,1,1,1];
xmin=min(x'); %求各指标最小值
xmax=max(x'); %求各指标最大值
net.trainParam.epochs=2500; %设定迭代步数
net=newff([xmin',xmax'],[5,2],{'logsig','logsig'}); %初始化网络
net=train(net,x,y); %进行网络训练
x1=[1.24,1.28,1.40;
1.80,1.84,2.04];%待分样本
y1=sim(net,x1); %数据泛化
plot(x(1,1:9),x(2,1:9),'*',x(1,10:15),x(2,10:15),'o',x1(1,:),x1(2,:),'p') %画数据图
grid on

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

建模之数据处理常用方法 的相关文章

  • 图和图的基本知识

    1 1 图的表示 1 2 图的特性 子图Subgraph 连通分量Connected Component 接通图Connected Graph 最短路径Shortest Path 图直径Diameter 1 3 图中心性 Centralit
  • BFS和DFS的python实现(要记住)

    BFS DFS python模板与实现 BFS模板 1 无需分层遍历 while queue 不空 xff1a cur 61 queue pop for 节点 in cur的所有相邻节点 xff1a if 该节点有效且未访问过 xff1a
  • BFS与 DFS题目练习(python)

    107 二叉树的层序遍历 II 难度中等423 给定一个二叉树 xff0c 返回其节点值自底向上的层序遍历 xff08 即按从叶子节点所在层到根节点所在的层 xff0c 逐层从左向右遍历 xff09 例如 xff1a 给定二叉树 3 9 2
  • LeetCode每日一题-合并两个有序数组

    88 合并两个有序数组 难度简单878 给你两个有序整数数组 nums1 和 nums2 xff0c 请你将 nums2 合并到 nums1 中 xff0c 使 nums1 成为一个有序数组 初始化 nums1 和 nums2 的元素数量分
  • debian 系统无声音

    系统识别了硬件 xff0c 加载了内核 可是就是没声音 在基础条件都满足的情况下 xff0c 尝试输入 xff1a sudo alsactl init 反正我是一输入声音就出来了 转载于 https my oschina net skyoo
  • 爬虫实战-爬取房天下网站全国所有城市的新房和二手房信息(最新)

    看到https www cnblogs com derek1184405959 p 9446544 html项目 xff1a 爬取房天下网站全国所有城市的新房和二手房信息和其他博客的代码 xff0c 因为网站的更新或者其他原因都不能正确爬取
  • pytorch 模型保存与加载 cpu转GPU

    model eval 的重要性 在2 中最后用到了model eval 是因为 只有在执行该命令后 34 dropout层 34 及 34 batch normalization层 34 才会进入 evalution 模态 而在 34 训练
  • 数据分析及数据分析的工作流程

    1 什么是数据分析 数据分析是根据业务问题 xff0c 对数据进行收集 xff0c 清洗 xff0c 处理和建模的过程 xff0c 用于识别有助于业务的信息 xff0c 获取关键业务结论并辅助决策 界定业务问题 xff08 以宜家为例 xf
  • SQL练习网站

    之前上过数据库的课程 xff0c 但感觉零零散散 xff0c 现在已经不记得多少 xff0c 一方面是没有总结另一方面是没有练习 https sqlbolt com 但感觉网页加载的很慢 但我发现以上两者结合起来棒棒哒 有中文 xff0c
  • SQL入门(二)查询执行顺序

    完整查询 SELECT DISTINCT column AGG FUNC column or expression FROM mytable JOIN another table ON mytable column 61 another t
  • SQL入门之基本语法

    下面是为了方便查考在GitHub上找到的一个教程 目录 开始使用 登录MySQL创建数据库创建数据库表增删改查 SELECTUPDATEINSERTDELETEWHEREAND 和 OR ANDORORDER BYINNOTUNIONASJ
  • python有向图,无向图绘制

    https www jianshu com p 52bb142314ebR语言画网络图 https blog csdn net fly hawk article details 78513257 python绘制无向图 xff0c 输入数据
  • 知识追踪待解决问题记录-交流贴

    记录遇到知识追踪的问题 xff0c 欢迎大家进行留言交流 1 DKT中的图如何画的 好像是根据这个公式 但还没画出来 2 GKT跑的效果很差 可能原因是作者对数据的特殊处理 xff0c 作者的实验数据好像不是assistment的 后面有人
  • conda安装包遇到问题An unexpected error has occurred. Conda has prepared the above report.

    之前还没问题 xff0c 现在就 base C Users wei gt conda activate tensoflow1 tensoflow1 C Users wei gt conda install seaborn Collectin
  • Requests库爬取实例

    网络爬虫的盗亦有道 网络爬虫的尺寸 爬取网页 xff0c 玩转网页 xff1a 小规模 xff0c 数据量小 xff0c 爬取速度不敏感 xff1b Requests库 爬取网站 爬取系列网站 xff1a 中规模 xff0c 数据量较大 x
  • Java8两个集合(List)取交集、并集、差集、去重并集

    Java8两个集合 List 取交集 并集 差集 去重并集 java guava 集合的操作 xff1a 交集 差集 并集 span class token keyword import span span class token name
  • XML,JSON,YAML

    信息标记的三种形式 信息的标记 xff1a 标记后的信息可形成信息组织结构 xff0c 增加了信息维度 标记后的信息可用于通信 存储和展示 标记的结构与信息一样具有重要价值标记后的信息有利于程序理解和运用 HTML的信息标记 xff1a H
  • python爬虫 2021中国大学排名定向爬虫

    最近的几篇博客来源是之前我下载的一个课件 在网上搜索了一下是一下这个课程的 xff0c 可以结合视频博客以及代码去更好地学习 Python网络爬虫与信息提取 北京理工大学 中国大学MOOC 慕课 icourse163 org 但是课程内容的
  • 爬虫小案例之爬取京东商品链接

    观察URL翻页的变化 爬取页面URL如下 base url 61 39 https search jd com Search keyword 61 39 43 keyword for x in range 1 num 43 1 url 61
  • Tensorflow,pytorch查看模型参数,模型可视化

    参数结构打印 TensorFlow1 12的打印结构 xff1a for var in tf trainable variables print 34 Listing trainable variables 34 print var Ten

随机推荐

  • TensorFlow学习笔记(一)

    TensorFlow版本2发布后 xff0c 使用TensorFlow变得更简单和方便 xff0c 但看网上的很多代码是使用的TensorFlow1进行完成的 xff0c 每次遇到不懂的函数去查 xff0c 理解记忆的一般 xff0c 感觉
  • 图神经网络(GNN)资源帖视频及必读论文

    最近在看图神经网络 xff0c 发现了部分宝藏 图神经网络资源大集合 图神经网络资源大集合 快来打包带走 公众号 图与推荐的博客 CSDN博客 入门博客 xff1a 从图 Graph 到图卷积 Graph Convolution xff1a
  • 计算机网络要点归纳(一文带你快速掌握网络知识)

    计算机网络 谢希仁版 可以用来期末复习 xff0c 也可以用来回顾自测 xff0c 发现好多都设计的网络相关的的内容 xff0c 一起回顾学习吧 第一章概述 计算机网络的性能指标 xff1a 速率 比特为单位 Kb s K 61 10 3
  • Git学习笔记(代码版本管理)-超详细

    Git之前一直听说没有自己操作过 xff0c 偶尔写完程序的时候想起要不放到GitHub上 xff0c 然后看到操作也不简单呢 然后还是不想放弃 xff0c 听了 莫烦Python Git 代码版本管理教程听了一遍没动手 xff0c 就放到
  • Pycharm上传,更新本地代码到GitHub(常见问题及解决)

    上传本地代码到GitHub上 进入Pycharm主页 xff0c 打开pycharm File gt Setting gt version control 但可能报错 lnvalid authentication data Can 39 t
  • Improving Knowledge Tracing via Pre-training Question Embeddings

    Improving Knowledge Tracing via Pre training Question Embeddings 论文 xff1a Improving Knowledge Tracing via Pre training Q
  • java guava 集合的操作:交集、差集、并集

    Java8两个集合 List 取交集 并集 差集 去重并集 java guava 集合的操作 xff1a 交集 差集 并集 开源地址 xff1a https github com google guava jar包下载 xff1a http
  • 知识追踪数据集介绍

    困扰了我很久的问题 xff0c 可能是我喜欢知根知底 见到论文中提到的2009 2010 xff0c 看到代码中是数据不太一样发出了疑问 最新 xff1a 超详细介绍 DataSet EduData documentation https
  • 深度知识追踪(DKT)实现pytorch(及常见问题)

    发现代码跑了几遍还是没有自己按照思路写一遍清楚 参考代码 GitHub dxywill deepknowledgetracing Pytorch implementation for Deep Knowledge tracing 论文 ht
  • 基于深度学习知识追踪研究进展(综述)数据集模型方法

    基于深度学习的知识追踪研究进展 计算机研究与发展 中文核心期刊 https kns cnki net kcms detail detail aspx dbcode 61 CAPJ amp dbname 61 CAPJLAST amp fil
  • linux常见命令与FileZilla

    linux命令与FileZilla 6月25日 FileZilla 文件互传 当我们使用一台主机的时候 xff0c 既有Linux系统又有Windows系统的时候 xff0c 我们可以拖拽 xff0c 复制粘贴等多种方式 xff0c 那如果
  • PostgreSQL和ElasticSearch学习笔记

    PG库 PostgreSQL 12 2 手册 pg数据库的结构理解 echao 博客园 cnblogs com PostgreSQL官方介绍称是最先进的开源关系型数据库 xff0c 支持所有主流的平台 xff0c 目前已经更新到了最新版本的
  • 网络集成总结重点

    网络集成总结 第一章 P2 网络系统集成的定义 xff1a 按照网络工程的需求及组织逻辑 xff0c 采用相关技术和策略 xff0c 将网络设备 xff08 交换机 路由器 服务器 xff09 和网络软件 xff08 操作系统 应用系统 x
  • Deep Knowledge Tracing with Transformers论文阅读

    In book Artificial Intelligence in Education pp 252 256 2020年6月代码https github com scott pu pennstate dktt light论文地址 PDF
  • MATLAB常见运算

    常用函数 1 三角函数 sin 正弦 sinh 双曲正弦 asin 反正弦 asinh 反双曲正弦 cos 余弦 cosh 双曲余弦 acos 反余弦 acosh 反双曲余弦 tan 正切 tanh 双曲正切 atan 反正切 atanh
  • Knowledge Tracing 资源帖2

    接上一篇 xff0c 一直更新 xff0c 记录方便学习 想我之前刚接触知识追踪 xff0c 在网上找资料几乎就几个 xff0c 现在发现很多优秀的小伙伴写了很多博客帮助我们学习 xff0c 像大佬们学习 Deep Knowledge Tr
  • 全国大学生数学建模竞赛、美赛研究生数学建模优秀论文分享

    想准备建模的你是不是和我一样到处找某年国赛优秀论文 xff0c 网上很多要么是图片的 要么下载要币还不少 xff0c 要不是某都文库之类的一点都不方便 当当当 xff0c 它来了 1992到2020全国大学生数学建模竞赛优秀论文免费分享 x
  • 4.   第一课--- 求三个数的乘积和三次方和

    4 求三个数的乘积和三次方和 问题描述 编程实现输入任意三个整数a b c xff0c 将这三个数的乘积以及三次方和输出 xff1b 样例输入 1 2 3 样例输出 6 36 源代码 第一种方法 xff1a include lt iostr
  • 数据库大作业预览-教室管理系统

    一直以为找不到了 xff0c 教室管理系统概述 1 1应用背景 教室在高校的教学资源中有着非常重要的地位 xff0c 在大学里 xff0c 教室仍然是教学的主要场所 xff0c 也是学生学习的重要场所 xff0c 所以教室环境和设备直接影响
  • 建模之数据处理常用方法

    灰色系统模型 灰色系统模型在数据处理和预测中经常使用 灰色系统理论建模特点 xff1a 原始数据必须等时间间距 处理思路 xff1a 首先对原始数据进行累加 xff0c 弱化原始时间序列数据的随 机因素 然后建立生成数的微分方程 GM 1