将数据框列中的日期转换为新列

时间:2020-05-09 04:58:44

标签: python pandas dataframe

下面是Excel的屏幕截图,但我们假设我们有一个Pandas数据框,看起来像左边的表格,其中我们在列中有日期。有没有简单的方法可以将其转换为类似于右侧表格的数据框,以便日期变为新列?

enter image description here

2 个答案:

答案 0 :(得分:1)

使用df.pivot

import pandas as pd

df = df.pivot(index='Name', columns='Date', values='Candies')
df = df.reset_index().rename_axis(None, axis=1)
df

输出:

    Name  4/01/20  4/02/20  4/03/20  4/04/20  4/05/20  4/06/20  4/07/20   4/08/20  4/09/20  
0  Alice        1        2        3        4        5        6        7         8        9
1    Bob        2        4        2        4        3        2        1         3        0

答案 1 :(得分:0)

您可以阅读上面建议的@victor来阅读.xlsx(适当更改参数)。

 df=pd.read_excel('my_excel.xlsx')

通过“名称”和“日期”列对数据框进行分组,并获得蜡烛的总和。

 df_grouped=df.groupby(['name','date'])['candles'].agg('sum').reset_index()

现在使用“ pivot_table” pandas方法透视分组结果。

 df_pivot=df_grouped.pivot_table('candles', 'name', 'date')