将元组列表转换为以下形式的表格的优雅方法是什么?
输入:
from pandas import DataFrame
mytup = [('a','b',1), ('a','c',2), ('b','a',2), ('c','a',3), ('c','c',1)]
a b 1
a c 2
b a 2
c a 3
c c 1
mydf = DataFrame(mytup, columns = ['from', 'to', 'val'])
输出:-可以替换为空白或nan
a b c
a - 1 2
b 2 - -
c 3 - 1
请您参考如下方法:
pivot 和 fillna 是你想要的:
import pandas as pd
mytup = [('a','b',1), ('a','c',2), ('b','a',2), ('c','a',3), ('c','c',1)]
mydf = pd.DataFrame(mytup, columns=['from', 'to', 'val'])
mydf.pivot(index='from', columns='to', values='val').fillna(value='-')
to a b c
from
a - 1 2
b 2 - -
c 3 - 1
