依旧是在做数学建模比赛中遇到的问题。
用主成成分分析法时,需要对评价指标矩阵进行处理,比如Z-score标准化等。下面总结了几个基础的矩阵有关操作。
1. 建立矩阵
建立一个mxn的0矩阵
import numpy as np
a=np.zeros((m, n))# 建立一个mxn的0矩阵
2.从excel表之间导入矩阵
用图作过渡
import pandas as pd
import networkx as nx
# 读取Excel表格数据
df = pd.read_excel('result.xlsx')
# 构建有向图
G = nx.DiGraph()
for index, row in df.iterrows():
G.add_edge(row['start'], row['end'], weight=row['weight'])
# 输出邻接矩阵
adj_matrix = nx.adjacency_matrix(G).todense()
3.计算矩阵的行列数
# 获取矩阵的行列数
rows, cols = Z.shape
print("该矩阵的行数为:", rows)
print("该矩阵的列数为:", cols)
4.标准化处理
import numpy as np
# Z-score标准化处理,得到矩阵Z,假设已知矩阵Y
Z = (Y - np.mean(Y, axis=0)) / np.std(Y, axis=0)