我有一个pandas数据框,如下所示:
day payment_method actuals
0 2015-03-31 DCASH_T3M 32
1 2015-03-31 DCASH_T3M_3D 90
2 2015-03-31 PAYPAL 34
4 2015-04-01 DCASH_T3M 16
5 2015-04-01 DCASH_T3M_3D 54
6 2015-04-01 PAYPAL 33
7 2015-04-02 DCASH_T3M 7
8 2015-04-02 DCASH_T3M_3D 80
9 2015-04-02 PAYPAL 38
我想做的是对它们进行时间序列分析。如果每个付款方式都有一个列报告相应的实际值和订单总值和时间序列,那将是有利的。
day DCASH_T3M DCASH_T3M_3D PAYPAL
2015-03-31 32 90 34
2015-04-01 16 54 33
2015-04-02 7 80 38
datatime对象将是一个新列,每个roe具有不同的日期。 pay_method列的值将是三个新列,每个列包含实际值中的值。
答案 0 :(得分:0)
您想要pivot
:
In [27]:
df.pivot(index='day', columns = 'payment_method', values = 'actuals')
Out[27]:
payment_method DCASH_T3M DCASH_T3M_3D PAYPAL
day
2015-03-31 32 90 34
2015-04-01 16 54 33
2015-04-02 7 80 38
答案 1 :(得分:0)
这样可以解决问题:
data = data.pivot(index=`'day', columns='payment_method',values='actuals)`