python - pandas 中的 groupby 和函数调用

标签 python python-3.x pandas

我有一个数据框,其中有一列“名称”。名称有多个值,如 sample1、sample2、sample3。我想对名称列中的值相同的所有组应用一个函数。

输出:

   Name  Value  Result
0  Name1      2       5
1  Name1      3       5
2  Name2      1      11
3  Name2      4      11
4  Name2      6      11
5  Name3      8      10
6  Name3      2      10

最佳答案

看起来你想要一个 groupby.apply .这样的事情应该有效:

import pandas as pd

df = # ... load your data

def group_sum(g):
    g["Result"] = g["Value"].sum()
    return g

df_grouped = df.groupby("Name").apply(group_sum)

编辑:Alexandre Nixon 的回答更适合这个用例。

关于python - pandas 中的 groupby 和函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53410178/

相关文章:

python - 查找彼此接近的对象边界

python - 数据框查找行以返回索引

javascript - Python 中 crypto.getRandomValues 和 Uint32Array 的等效项

python - 使用 groupby 和名称列表合并两个数据框

python - 交替应用于 Pandas

python - 解析 boto3 输出 JSON

Python 计数子串

python-3.x - 如何计算二值图像中 Blob 的实例(白色 Blob 和黑色作为背景色)

string - 执行 pandas to_hdf 时出现错误消息 "Exception: cannot find the correct atom type"

python - 根据存储在字典中的条件从 Pandas 数据框中选择数据