python - 如何在一列相同的熊猫数据框中执行两个聚合操作?
问题描述
我在 pandas 数据框中有一列,我想在同一结果中找出列的最小值和最大值。但问题是我只得到一个汇总值作为回报。
import pandas as pd
print(df)
col1 col2
5 9
6 6
3 4
4 3
df.agg({'col1':'sum','col1':'mean'})
此聚合的输出仅给出均值:
col1 4.5
dtype: float64
但是,我需要的输出应该同时具有 col1 的总和和均值,而我只是变得卑鄙。
解决方案
试试下面的代码:
import pandas as pd
from io import StringIO
content= """col1 col2
5 9
6 6
3 4
4 3
"""
df=pd.read_csv(StringIO(content),sep='\s+')
df.agg({"col1":["sum","mean"],"col2":"std"})
如果要在一列中应用多个函数,则必须使用 list,否则 col1 后面的函数将替换前者。如果您想为不同的列应用多个函数,只需在 agg 函数中使用 dict 即可。
推荐阅读
- java - Java中的int数组列表
- reactjs - 切片 JSON 数据?
- java - 在java中使用块逻辑上传文件
- python - Django views.py 添加多个文件
- r - 共享 Colab 笔记本的问题
- flutter - 为什么此地图中的值为 NULL?
- r - 循环多列,绘制时间序列并在 R 中保存数字
- sqlite - 使用 where 子句条件计算中位数 - sqlite
- android - 从表中获取数据时出现房间错误 - java.lang.NoSuchMethodError: 没有静态方法 createCancellationSignal()
- javascript - 获取检测到的对象的坐标/位置。谷歌可教机器