当前位置: 首页 > news >正文

【数学建模】灰色关联分析的核心步骤

文章目录

    • 步骤一:读数据
    • 步骤二:指标正向化
    • 步骤三:数据标准化
    • 步骤三:数据标准化
  • 步骤四:结果处理

步骤一:读数据

步骤一:读数据
X = xlsread(‘blind date.xlsx’); % 读取Excel文件中的相亲数据

详细说明:

该命令会自动读取Excel文件"blind date.xlsx"中的所有数值数据
读取的数据会存储在矩阵变量X中
如果Excel文件中包含多个工作表,默认读取第一个工作表的数据
可以指定特定工作表读取,例如:xlsread(‘blind date.xlsx’,‘Sheet2’)
该函数会忽略Excel文件中的文本和格式,只读取数值数据

步骤二:指标正向化

  • 三类指标转换为极大型
  1. 极小型:数值越小越好
  2. 极小型转极大型
			X(:,vec(i)) = Min2Max(X(:,vec(i)));%极小型转为极大型

[[极小MinMax讲解]]
2. 中间型:越接近某个值越好
1. 中间型转极大型

	best = input('请输入中间型的最好值:\n');%用户需要最好的数值temp = X(:,vec(i));X(:,vec(i)) = Mid2Max(X(:,vec(i)), best);

[[中间MidMax讲解]]
1. 区间型:落在某个区间越好
1. 区间型转最大型

		1. arr = input('请输入最佳区间,按照“[a,b]”的形式输入:\n');X(:,vec(i)) = Int2Max(X(:,vec(i)), arr(1), arr(2));

[[区间Int2Max]]

输入:[[正向化输入]]

步骤三:数据标准化

  1. 获取规模
		disp('***************正在进行标准化...***************');[n,m] = size(X);
  1. [[检查负数元素]]

% 检查有没有负数元素isNeg = 0;for i = 1 : nfor j = 1 : mif(X(i,j) < 0)isNeg = 1;break;endendendif (isNeg == 0)%没有负数squere_X = (X.*X);sum_X = sum(squere_X,1).^0.5; %按列求和,再开方stand_X = X./repmat(sum_X, n, 1);elsemax_X = max(X,[],1); %按照列找出最大元素min_X = min(X,[],1); %按照列找出最小元素stand_X = X - repmat(min_X,n,1) ./ (repmat(max_X,n,1) - repmat(min_X,n,1));enddisp('标准化完成!')

步骤三:数据标准化

image.png

步骤四:结果处理

  1. 确定虚拟供应商
  • 最大虚拟供应商置于最后一列
  • 使用zeros(m,n-1)创建m行n-1列的0矩阵
    image.png
  1. 将结果归一化
res_topsis = S ./ sum(S)%xlswrite('res_topsis.xlsx',res_topsis) %写入excel文档%disp('已完成打分,请到当前目录下res_topsis.xlsx文件中取出结果!')
http://www.dtcms.com/a/348135.html

相关文章:

  • 上位机知识篇---电脑参数
  • Shell脚本-影响shell程序的内置命令
  • [机械结构设计-32]:机械加工中,3D图评审OK,没有问题,后续的主要风险有哪些
  • Bright Data MCP:突破AI数据获取限制的革命性工具
  • M8504报错,开票数量大于收货数量
  • 请求上下文对象RequestContextHolder
  • 【datawhale组队学习】RAG技术 - TASK04 向量及多模态嵌入(第三章1、2节)
  • AI Agent全栈开发流程推荐(全栈开发步骤)
  • 在 vue3 和 vue2 中,v-for 和 v-if 可以一起用吗,区别是什么
  • Win10部署ElasticSearch、Logstash、Kibana
  • wpf之Grid控件
  • 图像均衡化详解:从直方图均衡到 CLAHE,让图片告别 “灰蒙蒙“
  • 征程 6X 常用工具介绍
  • 第16届蓝桥杯C++中高级选拔赛(STEMA)2024年12月22日真题
  • elasticsearch 7.x elasticsearch 使用scroll滚动查询中超时问题案例
  • 【C#】构造函数实用场景总结
  • PostgreSQL interval 转换为 int4 (整数)
  • Flink SQL执行SQL错误排查
  • 结构化智能编程:用树形向量存储重构AI代码理解范式
  • RAGFlow (二)小试牛刀:登陆页重构
  • 《链路状态路由协议OSPF》
  • 前端工程师面试题-vue
  • 记一次生产环境Hbase填坑之路、Hbase客户端登陆、kerberos认证、端口列表、Pod上手撕代码【Hbase最佳实践】
  • 【CV】OpenCV①——OpenCV常用模块
  • 使用 Fargate 在 AWS ECS 上运行 Spring Boot 应用程序
  • 【C#】【WinForm】ListView_列表视图控件
  • [每周一更]-(第157期):深入理解Go语言的垃圾回收机制:调优与监控
  • BERT(Bidirectional Encoder Representations from Transformers)模型详解
  • 2.7 提示词调优编码实战(二)
  • 2025年8月第3周AI资讯