python - 按 Pandas Dataframe 中的列中的条目分组
问题描述
我有一个带有id
as index
、和as 列的 Pandas DataFrame brand
,如下所示:type
price
brand type price
id
1234567 A X 39.0
2391923 A Y 20.0
1595354 B X 12.4
6699874 B Z 88.2
0998877 B Z 100.1
8791392 C X 32.0
我想按品牌和类别“分组”以找到像这样组织的平均价格:
X Y Z
brand_A $$.$$ $$.$$ $$.$$
brand_B $$.$$ $$.$$ $$.$$
brand_C $$.$$ $$.$$ $$.$$
我知道使用group_by
该.mean()
方法可以让我接近我想要的,但不完全是。任何提示表示赞赏。
解决方案
我认为你可以使用.groupby
和.unstack
df1 = df.groupby(['brand','type'])['price'].mean().unstack(1,fill_value=0)
print(df1)
type X Y Z
brand
A 39.0 20.0 0.00
B 12.4 0.0 94.15
C 32.0 0.0 0.00
推荐阅读
- azure-devops - 在自己的 Azure DevOps 服务器安装中使用 https 禁用克隆存储库
- c# - 在 server-ORA-3134 上打开 Oracle 连接时出错
- elasticsearch - ES如何重构一个像join这样的查询?
- excel - Microsoft Word 宏按钮,用于将旧表单数据保存/导出到 Excel 电子表格
- excel - IF(ISNA(MATCH 函数未正确提取数据
- java - Java - calculation distans and distans to origo - issue
- python - How to resample a pandas data frame every half second with data every second?
- javascript - 如果时间过长,是否停止执行网络请求?
- typescript - 为递归数据定义数据类型不正确
- google-kubernetes-engine - 如何使用 Stackdriver 创建一个检查 GKE pod/部署状态的警报?