gpt4 book ai didi

python - 根据 pandas 中的另一列计算一列的平均值

转载 作者:行者123 更新时间:2023-12-01 06:30:16 30 4
gpt4 key购买 nike

我有一个大型 csv 文件,其中示例如下所示(2 列和许多行)

date    score
1/1/16 0
2/1/16 0
3/1/16 0.2732
3/1/16 -0.6486
4/1/16 0
5/1/16 0.4404
5/1/16 -0.2732
6/1/16 -0.5859
6/1/16 0.34

您可以看到样本中存在多个具有不同分数的相同日期(与原始文件相同,其中有数百个具有分数的相同日期)。我想按日期平均得分,然后将其保存为 csv 格式。预期结果应如下所示(每个日期有一个平均分)

date    Avg_Score
1/1/16 0
2/1/16 0
3/1/16 -0.1877
4/1/16 0
5/1/16 0.0836
6/1/16 -0.12295

我怎样才能在Python的Pandas模块中做到这一点?我检查了 stackoverflow 的建议,发现了 loc、iloc 和 groupby。但我想我无法使它们有用,因为这是我尝试过的,并且仍然得到与原始文件相同的文件(没有任何变化)。不知道为什么它不起作用以及如何让它工作。

import pandas as pd
import csv
df = pd.read_csv('myfile.csv')

df.groupby('date').mean().reset_index()

df.to_csv('average.csv', encoding='utf-8', index=False)

非常感谢任何帮助,因为我已经为此苦苦挣扎了一段时间。谢谢。

最佳答案

groupby方法的输出分配给变量,例如这里df1:

df = pd.read_csv('myfile.csv')
#solution with renamed new column
df1 = df.groupby('date')['score'].mean().reset_index(name='Avg_Score')
#your solution
#df1 = df.groupby('date').mean().reset_index()
df1.to_csv('average.csv', encoding='utf-8', index=False)

关于python - 根据 pandas 中的另一列计算一列的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59943801/

30 4 0
文章推荐: xslt - 如何打印单个
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com