• 数学建模—灰色关联分析


    1、灰色关联分析概述

    对于多因素共同决定的抽象系统,人们往往希望知道,哪些是主要因素,哪些是次要因素;哪些因素对系统的发展影响较大,哪些因素对系统的影响较小。从而需要对系统进行分析。

    数理统计中常用的回归分析,主成分分析,分差分析存在不足之处:

    (1)要求有大量的数据,数据量少就难以找到规律。

    (2)要求样本服从典型的概率分布,要求各因素与系统特征数据之间呈线性关系,这种要求往往难以满足。

    (3)可能出现量化结果和定性分析不相符的情况。

    灰色关联分析的基本思想:根据序列曲线几何形状的相似程度来判断其联系是否紧密。曲线形状越接近,相应序列之间的关联度就越大,反之就越小。

    具体应用:分析产业对GDP的影响程度

    下表为某地区国内生产总值的统计数据(以百万元计),问该地区从2000年到2005年之间哪一种产业对GDP总量影响最大。

    年份

    国内生产总值

    第一产业

    第二产业

    第三产业

    2000

    1988

    386

    839

    763

    2001

    2061

    408

    846

    808

    2002

    2335

    422

    960

    953

    2003

    2750

    482

    1258

    1010

    2004

    3356

    511

    1577

    1268

    2005

    3806

    561

    1893

    1352

    第一步:对以上变量进行统计分析

     分析:

    (1)四个产业均呈上升趋势;(2)第二产业增幅明显;(3)第二产业和第三产业后两年差距拉大;(4)第一产业平稳增长。

    第二步:确定分析数列

    (1)母系列(又称参考系列、母指标):能反映系统行为特征的数据系列(类似于因变量Y,此处记为X0)。

    (2)子序列(又称为比较序列,子指标):影响系统行为的因素组成的数据系列(类似于自变量X)。

    在本例中,国内生产总值是母序列,其他产业是子序列。

    第三步:对变量进行预处理(两个目的:去量纲,缩小变量范围简化计算)

    对母序列和子序列中的每个指标进行预处理:先求出每个指标的均值,再用该指标中的每个元素除以该均值。

     第四步:计算各指标与母序列的关联系数

    记:x0=(0.7320, 0.7588, 0.8597......1.4013);x1=(0.8361, 0.8838, ......., 1.2152);x2=(......);x3=(......);记两级最小差:a = min(min(xi(k)-x0(k))),记两极最大差:b=max(max(xi(k)-x0(k)));

     定义:y(x_{0}(k),x_{i}(k))=\frac{a+\rho b}{\left | x_{0}(k)-x_{i}(k\right |+\rho b}\rho为分辨系数一般去0.5

     第五步:对得到的y进行求平均就得到了灰色关联度。

    第六步:通过比较三个子序列和母序列的关联度可以得出:该地区在2000年-2005年间的国内生产总值受到第三产业的影响最大(因为其灰色关联度最大)。

    讨论:(1)什么时候用标准化回归,什么时候用灰色关联分析?

    当样本个数比较大的时候用标准化回归,当样本个数比较小的时候用灰色关联分析。

    (2)如果母序列中有多个指标,应该怎么分析?

    例如:y1, y2是母序列,x1,x2.....xn是子序列

    那么我们首先计算y1和x1,x2.....xn灰色关联分析,再求y1和x1,x2.....xn灰色关联分析

    对应代码:

    %%灰色关联分析
    clear;clc
    load gdp.mat %导入数据矩阵
    Mean = mean(gdp); % 求出每一列的均值以供后续数据预处理
    gdp = gdp./repmat(Mean,size(gdp,1),1); % size(gdp,1)=6,计算gdp矩阵的行数
    % repmat(Mean,6,1),可以将函数进行扩展,扩展与gdp同型的矩阵,然后进行点除
    disp("预处理后的矩阵为:");
    disp(gdp)
    y = gdp(:,1); %母序列
    x = gdp(:,2:end); %子序列
    absx0_xi = abs(x - repmat(y,1,size(x,2)))  % 计算|X0-Xi|矩阵(在这里我们把X0定义为了Y)
    a = min(min(absx0_xi)); %计算两级最小差
    b = max(max(absx0_xi)); %计算两级最大差
    rho = 0.5;
    gmma = (a + rho*b)./(absx0_xi + rho*b) %计算子序列各个指标和母序列的灰色关联系数
    disp("子序列与母指标的各个关联系数为:")
    disp(mean(gmma))

  • 相关阅读:
    三维重建之PIFuHD
    Kubernetes初始化失败dial tcp 127.0.0.1:10248: connect: connection refused.
    第三章 内存管理 十一、虚拟内存的基本概念
    windows上搭建llama小型私有模型
    wxss和css的区别
    java基于ssm的图书销售库存管理入库信息系统
    R语言解释生存分析中危险率和风险率的变化
    LoRaWAN物联网架构
    川渝智慧高速第 4 部分:车路协同系统数据交换
    【精讲】vue2框架 todolist项目完整版案例及分析
  • 原文地址:https://blog.csdn.net/qq_60678226/article/details/126607994