从元组列表中获取矩阵

时间:2018-01-13 16:32:11

标签: python pandas

我有一个数据集A中的(x,y,z)元组列表。 如何使用x和y的现有值分别作为索引和列值来生成表示A的基础矩阵的数据帧B?

示例:

A:

x y z
1 1 1 
1 2 10
2 1 100

B:

    1    2
1   1    10
2   100  NaN

1 个答案:

答案 0 :(得分:1)

对于此数据框df

   x  y    z
0  1  1    1
1  1  2   10
2  2  1  100

枢转:

df.pivot(index='x', columns='y')

工作的:

       z      
y      1     2
x             
1    1.0  10.0
2  100.0   NaN

您还可以清除列和索引名称:

res = df.pivot(index='x', columns='y')
res.index.name = None
res.columns = res.columns.levels[1].values
print(res)

输出:

       1     2
1    1.0  10.0
2  100.0   NaN