【发布时间】:2021-06-23 16:10:30
【问题描述】:
我有以下系列,想把它变成一个矩阵,索引列分成单个字母。
我不确定生成矩阵的最简单方法是否有人能够帮助解决此问题?
系列:
A-B 10
A-C 20
A-D 30
B-C 40
B-D 50
C-D 60
期望:
A B C D
A 1 10 20 30
B 10 1 40 50
C 20 40 1 60
D 30 50 60 1
我已将系列的索引拆分为具有以下内容的唯一值:
set([item for sublist in [i.split('-') for i in df.index.tolist()] for item in sublist])
样本数据:
df = pd.Series([10,20,30,40,50,60],index=["A-B","A-C","A-D","B-C","B-D","C-D"])
pd.DataFrame([[1,10,20,30],[10,1,40,50],[20,40,1,60],[30,50,60,1]],index = ["A","B", "C", "D"], columns = ["A","B", "C", "D"])
【问题讨论】:
标签: python arrays pandas numpy matrix