权重计算方法三:变异系数法(Coefficient of Variation) | 您所在的位置:网站首页 › 计算变异系数例题 › 权重计算方法三:变异系数法(Coefficient of Variation) |
目录 1.原理简介 2.步骤详解 2.1 原始数据收集 2.2 指标数据正向化 2.3 数据标准化(消除量纲) 2.4 计算变异系数 2.5 计算权重及得分 3.案例分析 3.1 获取原始数据 3.2 指标正向化 3.3 数据标准化 3.4 计算变异系数 3.5 计算权重 4.完整代码(Java) 4.1 方法类CoV.java 4.2 主类CoVmain.java 1.原理简介变异系数法是根据统计学方法计算得出系统各指标变化程度的方法,是直接利用各项指标所包含的信息,通过计算得到指标的权重,因此是一种客观赋权的方法。 变异系数法根据各评价指标当前值与目标值的变异程度来对各指标进行赋权,若某项指标的数值差异较大,能明确区分开各被评价对象,说明该指标的分辨信息丰富,因而应给该指标以较大的权重;反之,若各个被评价对象在某项指标上的数值差异较小,那么这项指标区分各评价对象的能力较弱,因而应给该指标较小的权重。 2.步骤详解 2.1 原始数据收集假设一组数据中有m个指标,n条待评价样本,即一个n*m的矩阵,令其为X。其中xij表示第i行第j列的数据。 指标正向化的目的就是把所有的指标都转换为正向指标。 正向指标:又叫越大越优型指标,即该指标下的数据数值越大越好,例如成绩。 负向指标:又叫越小越优型指标,即该指标下的数据数值越小越好,例如排名。 对于正向指标:保持其原数据不变。 对于负向指标:采用如下方法。 其中k为指定的任意系数,其值可为0.1,0.2等; max|xj|表示第 j 列数据(指标)绝对值的最大值。 2.3 数据标准化(消除量纲)由于不同的指标数据的单位不同,因此无法直接对其进行计算,而数据标准化的目的就是消除单位的影响,使所有数据都能够用同一种方法对其进行计算。令标准化后的数据矩阵为R. 计算每个指标的均值: 计算每个指标的标准差(均方差): 因为标准差可以描述取值的离散程度,即某指标的方差反映了该指标的的分辨能力, 所以可用标准差定义指标的权重。 计算每个指标的变异系数: 权重: 得分: 假设有以下数据,x1~x7为指标,ABC为三条待评价对象,其中x1和x4为负向指标,其余为正向指标。 x1x2x3x4x5x6x7A0.7430.82670.8324120.86370.07430.0409B0.75670.80330.8736-100.8538-0.06650.0716C0.81040.76670.8539160.90380.08810.0657 3.1 获取原始数据这里采用jxl包读取Excel。 //读取数据 public double[][] read(String filepath) throws IOException, BiffException,WriteException { //创建输入流 InputStream stream = new FileInputStream(filepath); //获取Excel文件对象 Workbook rwb = Workbook.getWorkbook(stream); //获取文件的指定工作表 默认的第一个 Sheet sheet = rwb.getSheet("Sheet1"); rows = sheet.getRows(); cols = sheet.getColumns(); orig = new double[rows][cols]; pos = new double[rows][cols]; stand = new double[rows][cols]; //row为行 for(int i=0;i |
CopyRight 2018-2019 实验室设备网 版权所有 |