使用多个键进行索引

Indexing with multiple keys

  PageId    VolumePred  ConversionPred  OSBrowser
    955761  37200.0      27625.0    (11, 16)
    955764  30157.0      21155.0    (11, 16)
    955764  25258.0      17836.0    (11, 16)
    1184903 35492.0      17768.0    (11, 16)
    955764  24683.0      16965.0    (11, 16)
    955764  8.0              0.0    (32, 16)
    955761  4.0              0.0    (33, 16)
    955761  4.0              0.0    (33, 16)

我尝试通过 PageID 和 OSBrowser 计算 VolumePred 和 ConversionPred 的总和。

所以这里举例来说,需要的结果应该是:

  PageId    VolumePred  ConversionPred  OSBrowser
    955761  37200.0      27625.0       (11, 16)
    955764  55415.0      38991.0       (11, 16)
   1184903  35492.0      17768.0       (11, 16)
    955764  24683.0      16965.0       (11, 16)
    955764  8.0              0.0       (32, 16)
    955761  8.0              0.0       (33, 16)

我尝试了这段代码:

subdata.groupby(['PageId', 'OSBrowser'])['ConversionPred', 'VolumePred'].agg('sum')

但我收到此警告:

/tmp/ipykernel_16715/1460716585.py:1: FutureWarning: Indexing with multiple keys (implicitly converted to a tuple of keys) will be deprecated, use a list instead.
  subdata.groupby(['PageId', 'OSBrowser'])['ConversionPred', 'VolumePred'].agg('sum')

有什么想法吗?谢谢

你真的很接近;您只需要添加一组额外的方括号:

subdata.groupby(['PageId', 'OSBrowser'])[['ConversionPred', 'VolumePred']].agg('sum')