改进CRITIC法、CRITIC法、熵权法、结合TOPSIS法、线性加权法等代码

改进CRITIC法、CRITIC法、熵权法、结合TOPSIS法、线性加权法等代码,第1张

#%%                                                     改进CRITIC法
#完整代码
#导入相关库
import pandas as pd
import numpy as np
#导入数据
data=pd.read_excel('D:\lunwen\结构加功能.xlsx')
label_need=data.keys()[1:]
data1=data[label_need].values
#查看行数和列数
data2 = data1
[m,n]=data2.shape
#负向指标标准化
index=[2] #负向指标位置,注意python是从0开始计数,对应位置也要相应减1
for j in index:
    print('负向指标数据',data1[:,j])
    d_max=max(data1[:,j])
    d_min=min(data1[:,j])
    data2[:,j]=(d_max-data1[:,j])/(d_max-d_min)
# 正向指标标准化
#正向指标位置
index_all=np.arange(n)
index=np.delete(index_all,index) 
for j in index:
    print('正向指标数据',data1[:,j])
    d_max=max(data1[:,j])
    d_min=min(data1[:,j])
    data2[:,j]=(data1[:,j]-d_min)/(d_max-d_min)
#对比性
the=np.std(data2,axis=0)
print('各指标标准差:',the)#标准差
PJ=np.mean(data2,axis=0)
print('各指标平均值:',PJ)#平均值
BYXS=the/PJ
print('各指标变异系数:',BYXS)#变异系数
#矛盾性
data3=list(map(

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/919207.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存