繁体   English   中英

Python Pandas-每个位置/“ NAME”平均每月获得“ SNOW”

[英]Python Pandas - get an average of 'SNOW' per month from each location/ 'NAME'

我有一个名为Data.csv的.csv文件。 我需要查找每个位置或“ NAME”每个月的平均降雪量。 然后,我需要保存2016年和2017年的年度总计,以将.csv文件分开。 我在用熊猫。 不知道从哪里开始。

这是我现在通过研究得出的结论。

import pandas as pd

df2 = pd.read_csv("Data.csv")

gname = df2.groupby('NAME')

for NAME, Name_df2 in data:
    df2['DATE'] = pd.to_datetime(df2['DATE'])
    df2.groupby([df.DATE.dt.month,'NAME','SNOW']).mean().sort_values()

首先需要您为我们提供示例数据。 但这是定向的:

import pandas as pd

df = pd.read_csv('data.csv')
df['DATE'] = pd.to_datetime(df['DATE'])
g = df.groupby([df.DATE.dt.year, df.DATE.dt.month, 'NAME'])['SNOW'].mean().reset_index().sort_values()

df_2016 = df.loc[df.DATE.dt.year == 2016]
df_2016.to_csv('2016 snow totals.csv', index=False)
df_2017 = df.loc[df.DATE.dt.year == 2017]
df_2017.to_csv('2017 snow totals.csv', index=False)

如果您只有2年以上的时间,则应将分组的数据框拆分为一个列表,然后像这样遍历整个列表。

for year in range(df.DATE.dt.year.min(), df.DATE.dt.year.max()):
    df.loc[df.DATE.dt.year == year].to_csv(year + '_snowfall.csv', index=False)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM