python - 如何从数据框中的分类变量中找到定量变量的平均值?
问题描述
假设我在熊猫中有以下数据框:
data = {'State':['CA', 'CA', 'CA', 'CA', 'NY', 'NY', 'TX'],
'Cost':[20, 30, 40, 50, 60, 70, 70]}
test = pd.DataFrame(data)
print(test.head(7))
这将是以下
State Cost
0 CA 20
1 CA 30
2 CA 40
3 CA 50
4 NY 60
5 NY 70
6 TX 70
在这种情况下,加利福尼亚的平均成本为 35,纽约的平均成本为 65,德州的平均成本为 70。
这是我的问题:pandas 中的查询是什么,我们可以在其中找到给定状态的状态的平均成本?
解决方案
使用groupby
和mean
:
print(test.groupby('State').mean())
哪个输出:
Cost
State
CA 35
NY 65
TX 70
如果你想要一个清洁工DataFrame
:
print(test.groupby('State', as_index=False).mean())
这使:
State Cost
0 CA 35
1 NY 65
2 TX 70
推荐阅读
- java - 由于 java 访问修饰符导致应用程序崩溃 - 为什么?
- sql - 在插入语句 plsql 中使用 if else
- reactjs - 在 React JSX 中使用 STATE 作为 html ATTR
- docker - 使用 docker 运行主机上存在的文件而不复制它
- java - 读取具有已知和未知列的 CSV 文件 java
- javascript - 我们可以在一个苗条的组件中编写打字稿吗?
- c++ - PCM 文件如何使用 lame 编码器转换为 MP3
- c# - 来自视图模型的 WPF 列表框焦点
- python - 如何替换python列表中存在的字典中的键?
- android - 如何在主类中使用 Companion 对象