#归一化
df_weight= (df - df.min())/(df.max() - df.min())
m,n=df_weight.shape
#第一步读取文件,如果未标准化,则标准化
df_weight=df_weight.as_matrix(columns=None)
#将dataframe格式转化为matrix格式
k=1/np.log(m)
yij=df_weight.sum(axis=0)
pij=df_weight/yij
#第二步,计算pij
test=pijnp.log(pij)
test=np.nan_to_num(test)
ej=-k(test.sum(axis=0))
#计算每种指标的信息熵
wi=(1-ej)/np.sum(1-ej)
#计算每种指标的权重
wi = pd.DataFrame(wi)
wi.to_csv(‘123.csv’)
熵权法 算权重系数 python
最新推荐文章于 2024-10-26 22:59:40 发布