【发布时间】:2022-01-23 11:47:52
【问题描述】:
我有一个数据框,其中包含具有不同产品类型的城市数据,例如:
| city | product_type |
|---|---|
| A | B |
| A | B |
| A | D |
| A | E |
| X | B |
| X | C |
| X | C |
| X | C |
我想知道每个城市最常见的产品类型是什么。对于上面的df,城市A的产品B和城市X的产品C。
我试图通过首先分组然后遍历组并尝试找到出现次数最多的产品类型来解决这个问题,但它似乎不起作用:
d = df.groupby('city')['product_type']
prods=[]
for name,group in d:
l = [group]
prod = max(l, key=l.count)
prods.append(prod)
print(prods)# this is list of products with highest occurrence in each city
这段代码似乎给了我所有的产品类型,而不仅仅是最常见的。
【问题讨论】:
标签: python pandas pandas-groupby