熊猫从平面文件更改为列格式

时间:2017-04-19 18:47:05

标签: python pandas

我的数据框如下所示

Data.ix[1:4]
   Open  Type     DateTime
1  3     A        2013-02-19 08:48:00
2  5     A        2013-02-19 08:50:00
3  1     B        2013-02-19 08:48:00
4  7     B        2013-02-19 10:33:00

我想将其更改为以下格式:

DateTime              A   B      
2013-02-19 08:48:00   3   1
2013-02-19 08:50:00   5
2013-02-19 10:33:00       7

数据框很大,大约有50种Types。我希望将DateTime作为新索引进行排序。 Type列的类型是结果数据框的新列。

我不知道如何处理这个问题。我尝试使用pandas pivot table,但我不知道该怎么做。

z1 = pd.pivot_table(Data, index=['DateTime', 'Type'], values=['Open'], aggfunc=[np.sum])['sum']

1 个答案:

答案 0 :(得分:1)

您可以使用pivot_table,如下所示。

import pandas as pd
Data  = pd.DataFrame.from_dict({'open':[3,5,1,7], 'Type': ['A','A','B','B'], 'DateTime' : pd.date_range("11:00", "14:00", freq="60min")})

table = pd.pivot_table(Data, values = 'open', index=['DateTime'],
                columns=['Type'])
print table

结果

Type                   A    B
DateTime                     
2017-04-19 11:00:00  3.0  NaN
2017-04-19 12:00:00  5.0  NaN
2017-04-19 13:00:00  NaN  1.0
2017-04-19 14:00:00  NaN  7.0