【问题标题】:Make a pandas dataframe group by count have a column name按计数使熊猫数据框组具有列名
【发布时间】:2018-08-12 22:10:14
【问题描述】:

在 python 3.6 和 pandas 0.19.0 中有一个数据框“df”

id
abc
abc
def

我正在尝试创建一个带有 id_count 列的数据框,这与 SQL 相同:

SELECT id, COUNT(1) AS id_count FROM table group by id

理想回报:

id  id_count
abc 2
def 1

我试过了:

print (df.groupby(['id'])['id'].count())

返回

id
abc 2
def 1

print (df.groupby(['id'])['id'].transform('count'))

返回

0    2
1    1

有什么想法吗?谢谢!

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    groupby 的聚合函数中使用这种基于字典的格式。

    df.groupby('id', as_index=False)['id'].agg({'id_count':'count'})
    
        id  id_count
    0  abc         2
    1  def         1
    

    【讨论】:

      猜你喜欢
      • 2013-12-20
      • 1970-01-01
      • 2021-12-23
      • 2015-01-28
      • 2017-07-08
      • 2018-07-19
      • 1970-01-01
      • 2019-11-01
      • 2013-02-28
      相关资源
      最近更新 更多