【问题标题】:mode of a column in a dataframe based on another column基于另一列的数据框中列的模式
【发布时间】:2019-07-30 13:06:16
【问题描述】:

想象一下,我有一个名为“国家/地区”的数据框,其中包含多个列,包括国家/地区及其各自的特质。

Country   Idiosyncracies
Brazil    We love football
France    We love love
Italy     We love Pizza
Italy     We love Pizza
Italy     We love Gellato
Brazil    We love festivals
Italy     We love Pizza
France    We love bread
France    We love bread
France    We love bread
Italy     We love Gellato
Italy     We love Pizza
Brazil    We love football

对于每个国家,我想将模式响应(特质)提取到另一个数据框中,如下所示

Country    Top comment        
Brazil     We love football    
France     We love bread       
Italy      We love Pizza       

这是我试过的一段代码

grouped = countries('Country')['Idiosyncracies'].mode()[0])

但是,我得到的不是 (3,2) 数据框,而是

的错误消息
TypeError: 'DataFrame' object is not callable

【问题讨论】:

    标签: python pandas dataframe mode


    【解决方案1】:

    使用GroupBy.applySeries.iat 选择第一个值:

    df = (countries.groupby('Country')['Idiosyncracies']
                   .apply(lambda x: x.mode().iat[0])
                   .reset_index())
    print (df)
      Country    Idiosyncracies
    0  Brazil  We love football
    1  France     We love bread
    2   Italy     We love Pizza
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-14
      • 2022-07-18
      • 1970-01-01
      • 2020-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多