【问题标题】:Pandas grouping elements to create new column [duplicate]熊猫分组元素以创建新列[重复]
【发布时间】:2021-02-28 15:44:36
【问题描述】:
df = pd.DataFrame({'Date':['1/1/2011', 1/1/2011', 1/1/2011', '11/2/2011', '11/2/2011', '13/2/2011'], 
                    'Site':[MUC. MUC, MUC, BER, BER, BER]
                   'Activity':[X, X, K, K, R, D]}) 

我想在一个新的数据框中包含以下内容。

'Date'    'Site' 'X'    'K'  'R'  'D'
1/1/2011     MUC  2      1    0    0
11/2/2011    BER  0      1    1    0
13/2/2011    BER  0      0    0    1  

【问题讨论】:

  • 关得太早了,这个问题不是关于枢轴的。

标签: python pandas pandas-groupby


【解决方案1】:

您可以结合使用get_dummiesgroupby

df = pd.DataFrame({'Date':['1/1/2011', '1/1/2011', '1/1/2011', '11/2/2011', '11/2/2011', '13/2/2011'], 'Site':['MUC', 'MUC', 'MUC', 'BER', 'BER', 'BER'], 'Activity':['X', 'X', 'K', 'K', 'R', 'D']})

pd.get_dummies(df, columns=['Activity'], prefix='', prefix_sep='').groupby(['Date', 'Site']).sum().reset_index()

结果:

        Date Site  D  K  R  X
0   1/1/2011  MUC  0  1  0  2
1  11/2/2011  BER  0  1  1  0
2  13/2/2011  BER  1  0  0  0

【讨论】:

    猜你喜欢
    • 2019-01-23
    • 2019-08-06
    • 2021-04-01
    • 2020-03-22
    • 2021-09-11
    • 2021-08-25
    • 2019-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多