我已经将一些数据读入Pandas数据帧(来自SQL数据库)。数据按以下形式顺序排列:
AA | 2016-11-09 09:30:00 | 1
AA | 2016-11-09 09:45:00 | 2
AA | 2016-11-09 10:00:00 | 5
...
BB | 2016-11-09 09:30:00 | 3 BB | 2016-11-09 09:45:00 | 6 BB | 2016-11-09 10:00:00 | 8...
是否有一种简单的方法将数据转换为
2016-11-09 09:30:00 | 1 | 3
2016-11-09 09:45:00 | 2 | 6
2016-11-09 10:00:00 | 5 | 8
答案 0 :(得分:4)
您需要转轴
df.pivot(index = 'Data_Time', columns = 'Symbol', values = 'Value').reset_index()
你得到了
Symbol Data_Time AA BB
0 2016-11-09 09:30:00 1 3
1 2016-11-09 09:45:00 2 6
2 2016-11-09 10:00:00 5 8
另一种方式:
df.set_index(['Data_Time', 'Symbol']).Value.unstack().reset_index()