matlab 计算变异系数,变异系数法求权重matlab 代码[通俗易懂]

matlab 计算变异系数,变异系数法求权重matlab 代码[通俗易懂]利用matlab编程,很容易根据变异系数法,求得多指标综合评价模型的权重。代码如果有不懂的地方,可以联系我。变异系数法求权重matlab代码clear;clc;[data1,header1]=xlsread(‘statistic1.xlsx’,’ECO’);%必须将statistic.xlsx至于默认文件下,或者给出完整路径[data2,header2]=xlsread(‘stati…

大家好,又见面了,我是你们的朋友全栈君。

利用matlab编程,很容易根据变异系数法,求得多指标综合评价模型的权重。 代码如果有不懂的地方,可以联系我。

变异系数法求权重matlab 代码

clear;clc;

[data1,header1]=xlsread(‘statistic1.xlsx’,’ECO’); %必须将statistic.xlsx至于默认文件下,或者给出完整路径

[data2,header2]=xlsread(‘statistic2.xlsx’,’ECO’); % data1 为10个city数据,data2位20个city数据

size1=size(data1);m1=size1(1,1);d1=data1;d2=data2;

size2=size(data2);m2=size2(1,1);

judge=[4 6 12 13 16 17 18]; % 需要极大化处理的指标位置

for j=1:length(judge) % 将极小型数据指标极大化,便于计算得分 d2(:,judge(1,j))=1./d2(:,judge(1,j));

d1(:,judge(1,j))=1./d1(:,judge(1,j));

end

sum2=sum(d2);sum1=sum(d1);

data22=[];data11=[];

for i=1:m2 % 数据归一化处理

data22=[data22;d2(i,:)./sum2];

end

for i=1:m1

data11=[data11;d1(i,:)./sum1];

end

R=data22;

deta=std(R)./mean(R); % 计算变异系数

w=deta/sum(deta);

%score=data1*w’; % 综合得分

score=data11*w’;

output=[mean(R);deta;w];

score1=5+(score-min(score)+std(score)/length(score))./(max(score)-min(score)+mean(score)/length(score))*95;

% 功效系数法,使得得分在[5,100]

[ScoreFinal,index]=sort(score1,’descend’); %降序排列

sort=[ScoreFinal,index]; % 得分与排名

xlswrite(‘statistic1.xlsx’,output,’变异系数’); %输出均值mean,标准差std,权重w 到statistic1.xlsx

xlswrite(‘statistic1.xlsx’,sort,’变异sortDescend’); %输出得分与排名 statistic1.xlsx

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132269.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 程序员的最炫民族风[通俗易懂]

    程序员的最炫民族风[通俗易懂]最近公司其它项目组加班比较多,自然bug也是海海的,同事有感而发,写下了这首程序员的最炫民族风苍茫的Bug是我的爱绵绵的Bug票起出来什么样的Bug是最呀最难改什么样的变更才是最开怀长长的代码写出来前台的Check到底改不改火辣辣的RedMine是我们的期待改成解决状态才是最自在我们要改就要改得最痛快你是我心中最难的Bug让我用心把你改出来(

    2022年9月22日
    2
  • pycharm21 永久激活【2022最新】2022.01.31「建议收藏」

    (pycharm21 永久激活)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlCJM5ZJBPHS-eyJsaWN…

    2022年3月31日
    109
  • cmd输入java有效,输入javac无效解决方案

    cmd输入java有效,输入javac无效解决方案笔记本的系统是win1064bit的系统,按照网上的指导安装了jdk和jre运行cmd的时候,输入java会有输出,但是输入javac的时候就报javac不是内部或外部命令的错误。最终的解决办法是:cmd中输入:setpath="%JAVA_HOME%\bin"…

    2022年5月8日
    64
  • 深入浅出,JWT单点登录实例+原理

    深入浅出,JWT单点登录实例+原理深入浅出,JWT单点登录实例先直接上案例,方便工作中拷贝。后面说原理。代码git链接 案例演示:Controller: 登录授权接口,用户输入名字密码后请求此接口。登录成功后返回jwt 模拟认证中心,真实环境中此接口应该是一个单独的服务,这里方便演示,用一个接口代替。@PostMapping(“/login”)publicObjectlogin(){returnnull;} 主业务服务的主接口,返回主页

    2022年5月21日
    39
  • Python学习:关键字global和nonlocal的用法说明

    Python学习:关键字global和nonlocal的用法说明一、globalglobal关键字用来在函数或其他局部作用域中使用全局变量。1.1如果局部要对全局变量修改,而不使用global关键字。count=0defglobal_test():count+=1print(count)global_test()会出现如下错误:1.2如果局部要对全局变量修改,应在局部声明该全局变量。co…

    2025年9月22日
    4
  • ~按位取反_按位取反什么意思

    ~按位取反_按位取反什么意思inta=0;intb=~a;System.out.println(b);  // -1计算方法:因为整形是32位有符号补码整数表示的。因此将整形转换为二进制后为:a 十进制0二进制00000000000000000000000000000000~a的二进制1111111111111111111111111

    2022年8月15日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号