在用 Python 复现 CRITIC 权重法时,需要计算变异系数,以标准差的形式来表现,如下所示:
Sj表示第 j 个指标的标准差,在 CRITIC 权重法中使用标准差来表示各指标的内取值的差异波动情况...数据如下:
二、详解计算均值和标准差
初始化一个简单的矩阵:
a = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
])
a
分别计算整体的均值...# 每一列的均值
print("每一行的均值:", np.mean(a, axis=1)) # 每一行的均值
分别计算整体的标准差、每一列的标准差和每一行的标准差:
print("整体的方差..., np.std(a, axis=1)) # 每一行的标准差
结果如下:
三、实践:CRITIC权重法计算变异系数
导入需要的依赖库:
import numpy as np
import pandas...(axis=0)
xmax = X.max(axis=0)
xmaxmin = xmax - xmin
n, m = X.shape
print(m, n)
for i in range(n):