重塑熊猫数据框架

时间:2016-07-19 05:08:40

标签: python pandas

我有一个像这样的Pandas数据框,其中的列如下:

  1. userid顾名思义
  2. name是每个api事件
  3. count是事件的频率
  4.   

    enter image description here

    所以,我想要一个如下所示的数据框:

    userid    api_event_1          api_event_2          ....   api_event_n
    17        count_of_apievent1   count_of_apievent2   ....   count_of_apieventn
    2345      count_of_apievent1   count_of_apievent2   ....   count_of_apieventn
     .              .                   .                  .        .
     .              .                   .                  .        .
    

2 个答案:

答案 0 :(得分:3)

怎么样?
df.pivot(index='userid', columns='name', values='count_of_name')

其中df是你的熊猫数据帧 (如果某些值不存在,将插入Nan。例如,如果用户X的事件A没有计数)

要填写0而不是用户没有api事件的NaN,您可以这样做:

df.pivot(index='userid', columns='name', values='count_of_name').fillna(0)

答案 1 :(得分:0)

使用DataFrame的transpose方法:

print(df.transpose())

或者只是:

print(df.T)