灰色关联分析

文章目录

  • 前言
  • 一、灰色关联分析是什么?
  • 二、使用步骤
    • 1.画出统计图
    • 2.确定分析序列
    • 3.对变量进行预处理
    • 4.计算子序列各个指标的关联系数
    • 5.定义灰色关联度
  • 总结


前言

系统分析时,常使用数理统计:回归分析(标准化回归)、方差分析(使用较少)、主成分分析(用于降维),但总有不足:
1.需要有大量数据;数据个数大于条件个数
2.样本需要服从典型概率分布
3.可能出现量化结果与定性分析结果不服的现象

多重共线性)


以matlab程序为例

一、灰色关联分析是什么?

根据序列曲线几何形状的相似程度来判断联系是否紧密。曲线越接近,相应序列之间的关联度就越大,反之就越小、
灰色关联分析方法计算量较小,对样本量大小与有无规律同样适用

二、使用步骤

进行系统分析:

1.画出统计图

Excel绘制

2.确定分析序列

1.母序列(参考序列、母指标):能反映系统行为特征的数据序列,因变量(记为X)
2.子序列(比较序列、子指标):影响系统行为因素组成的数据序列,自变量(X1…Xn

3.对变量进行预处理

去量纲,缩小变量范围简化计算

  1. 求出每个变量的均值
    average函数
clear;clc
load gdp.mat  
Mean = mean(gdp);  
  1. 用该指标的每个元素除以均值
    表格中fn+f4锁定
gdp = gdp ./ repmat(Mean,size(gdp,1),1);  
disp('预处理后的矩阵为:'); 
disp(gdp)

4.计算子序列各个指标的关联系数

两级最小差:a = min min|x0(k)-xi(k)|
两级最大差:b = max max|x0(k)-xi(k)|
在这里插入图片描述

Y = gdp(:,1);  % 母序列
X = gdp(:,2:end); % 子序列
absX0_Xi = abs(X - repmat(Y,1,size(X,2)))  
a = min(min(absX0_Xi))    
b = max(max(absX0_Xi))
rho = 0.5;
gamma = (a+rho*b) ./ (absX0_Xi  + rho*b)  

5.定义灰色关联度

每列求平局值,得到该因素的关联度

disp('子序列中各个指标的灰色关联度分别为:')
disp(mean(gamma))

总结

当样本个数较⼤时, ⼀般使⽤标准化 回归 ;
当样本个数较少时,才使⽤灰⾊关联分析
多个指标则单独分别计算
美赛不建议用!!中国算法

你可能感兴趣的:(数模)