您好,我有以下代码,以便做一个邻接矩阵,但是我在另一列中有按同等权重,如何用此数据在熊猫中建立邻接矩阵?
当前代码:
ady = pd.read_csv("edges.csv", sep=',')[['Source', 'Target', 'weight']]
ady['weight'] = pd.to_numeric(ady['weight'])
ady = pd.crosstab(ady.Source, ady.Target, ady.weight, aggfunc = sum)
数据:
Source, Target, weight
a,a,0
a,b,2
a,c,1
b,a,2
b,b,1
b,c,0
c,a,1
c,b,0
c,c,0
预期数据:
a,b,c
a 0,2,1
b 2,1,0
c 1,0,0
dtypes:
ady.dtypes
Source object
Target object
weight float64
原始数据:https://pastebin.com/Y55a64yz
任何想法?
谢谢
您可以简单地pivot
adi
DataFrame:
adi.pivot(*adi.columns)
给予:
Target a b c
Source
a 0 2 1
b 2 1 0
c 1 0 0