Python-Pandas-将具有特定子集的列转换为行

Python-Pandas-将具有特定子集的列转换为行,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个如下的数据框,上面有日期、价格和序列号 +----------+--------+--------+ | Date | Price | Serial | +----------+--------+--------+ | 2/1/1996 | 0.5909 | 1 | | 2/1/1996 | 0.5711 | 2 | | 2/1/1996 | 0.5845 | 3 | | 3/1/1996 | 0.5874 | 1 | | 3/1/199

我有一个如下的数据框,上面有日期、价格和序列号

+----------+--------+--------+
|   Date   | Price  | Serial |
+----------+--------+--------+
| 2/1/1996 | 0.5909 |      1 |
| 2/1/1996 | 0.5711 |      2 |
| 2/1/1996 | 0.5845 |      3 |
| 3/1/1996 | 0.5874 |      1 |
| 3/1/1996 | 0.5695 |      2 |
| 3/1/1996 |  0.584 |      3 |
+----------+--------+--------+
我想让它看起来像这样,序列号成为列名,数据将自己排序到正确的日期行和序列列中

+----------+--------+--------+--------+
|   Date   |   1    |   2    |   3    |
+----------+--------+--------+--------+
| 2/1/1996 | 0.5909 | 0.5711 | 0.5845 |
| 3/1/1996 | 0.5874 | 0.5695 |  0.584 |
+----------+--------+--------+--------+
我知道我可以通过循环来实现这一点,但我只是想知道是否有更有效的方法来实现这一点


谢谢你的帮助。同样好奇的是,是否有更好的方法粘贴此类表格,而不是在my questions=x中附加图像。您可以使用熊猫。pivot_table:

res = df.pivot_table(index='Date', columns='Serial', values='Price', aggfunc=np.sum)\
        .reset_index()

res.columns.name = ''

       Date       1       2       3
0  2/1/1996  0.5909  0.5711  0.5845
1  3/1/1996  0.5874  0.5695  0.5840

请在问题正文中添加图片!发布代码/文本,而不是代码或文本的图像。