【问题标题】:pandas - count size and frequency of different groupby levelspandas - 计算不同分组级别的大小和频率
【发布时间】:2015-06-20 04:18:14
【问题描述】:

经过一些 groupby 操作后,我得到了这个结果数据框:

GridCode  User_ID    DLang
3         224591119  es       
                     ja        
                     zh        
4         224591119  es        
6         146381773  en        
9         17925282   ca        
          63102456   en        
          106225728  ca        
          229125779  ca        

我想为每个GridCode 计算每个DLangUser_IDs 的数量,构建新列,例如'User_ID_(DLang)' 结果数据框将显示为:

GridCode User_ID_es User_ID_ja User_ID_zh ...
3 1 1 1 ...
4 1 0 0 ...
6 0 0 0 ...

到目前为止,我使用 unstuck 方法得到了一些结果,但知道我无法弄清楚如何计算 User_ID 及其频率。

【问题讨论】:

  • 我试了一下,但不确定你想要什么。显示GridCode=9 的所需结果可能会很好,因为与其他行不同,Dlang 的值重复。

标签: python pandas


【解决方案1】:

我不确定我是否理解你想要做什么,也许是这样的?

df.groupby(['GridCode','DLang']).count().unstack().fillna(0)

         User_ID            
DLang         ca en es ja zh
GridCode                    
3              0  0  1  1  1
4              0  0  1  0  0
6              0  1  0  0  0
9              3  1  0  0  0

【讨论】:

  • 是的,这正是我想要的,谢谢!
猜你喜欢
  • 2014-06-17
  • 2021-06-01
  • 2016-03-26
  • 2017-01-01
  • 2021-08-19
  • 1970-01-01
  • 2022-01-06
  • 2012-02-14
  • 1970-01-01
相关资源
最近更新 更多