[英]GroupBy in Pandas without using Aggregate Function
我正在從事零售數據存儲,並嘗試獲取類別和子類別的報告。 我嘗試查看stackoverflow答案,但找不到解決方案。
以下是示例數據(不是完整的數據集)
+-----------------+--------------+
| Category | Sub-Category |
+-----------------+--------------+
| Furniture | Bookcases |
| Furniture | Chairs |
| Office Supplies | Labels |
| Furniture | Tables |
| Office Supplies | Storage |
| Furniture | Furnishings |
+-----------------+--------------+
我的代碼:
orders[['Category', 'Sub-Category']].groupby(by=['Category', 'Sub-Category']).nunique()
我的結果集:
Category Sub-Category
Category Sub-Category
Furniture Bookcases 1 1
Chairs 1 1
Furnishings 1 1
Tables 1 1
Office Supplies Appliances 1 1
Art 1 1
我想要的就是
Category Sub-Category
Furniture Bookcases
Chairs
Furnishings
Tables
Office Supplies Appliances
Art
有沒有一種方法可以隱藏計數。 如果我不包括nunique
那么我將返回對象而不是實際輸出。
我不確定熊貓中是否存在此功能,還是應該看看其他東西。
使用
df=df.sort_values('Category')
df.Category=df.Category.mask(df.Category.duplicated(),'')
df
Out[450]:
Category Sub-Category
0 Furniture Bookcases
1 Chairs
3 Tables
5 Furnishings
2 OfficeSupplies Labels
4 Storage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.