python - 按月和年对 .csv 中的数据进行排序并计算平均值

标签 python sorting csv mean

我有以下数据(通过我创建的另一个脚本生成),

Date,HAD
01/01/1951,1
02/01/1951,-0.13161201
03/01/1951,-0.271796132
04/01/1951,-0.258977158
05/01/1951,-0.198823057
06/01/1951,0.167794502
07/01/1951,0.046093808
08/01/1951,-0.122396694
09/01/1951,-0.121824587
10/01/1951,-0.013002463

下一步是我想对这些数据进行排序,以便将其显示在 .csv 中,如下所示:

Month, Mean
01/1951, 0.5 
02/1951, 0.1
etc.....

有没有简单的方法可以做到这一点?

最佳答案

如果您安装pandas ,然后您可以使用将 CSV 加载到 pandas DataFrame 中

In [51]: df = pd.read_csv('data', parse_dates=[0], index_col=[0], dayfirst=True); df

Out[52]: 
                 HAD
Date                
1951-01-01  1.000000
1951-01-02 -0.131612
1951-01-03 -0.271796
1951-01-04 -0.258977
1951-01-05 -0.198823
1951-01-06  0.167795
1951-01-07  0.046094
1951-01-08 -0.122397
1951-01-09 -0.121825
1951-01-10 -0.013002

并使用计算每个月的平均值

In [53]: result = df.resample('M', how='mean'); result

Out[53]: 
                 HAD
Date                
1951-01-31  0.009546

并使用以下方法将 CSV 保存到文件中:

In [49]: result.to_csv('/tmp/out')

关于python - 按月和年对 .csv 中的数据进行排序并计算平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22406171/

相关文章:

在容器类中使用自定义比较器的 C++ 排序集

arrays - asort(src,dest) 到多维数组

php - 逐行修改一个csv文件

python - 使用角坐标收缩多边形

python - 如何在 Python 中编写一个在 20 个不同的 csv 文件上运行该函数的函数?

java - 按自然顺序比较字符串但忽略字符串的前缀

python - 使用 Python 对 CSV 文件中的列进行乘法/除法

VBA使用登录名和密码从网站下载csv文件

python - 无法找出 -11 的返回码是什么意思

python - 更改当前 python 脚本的命名空间(具有模块名称的类)