利用python将月数据统计为季节数据
在时间序列分析中,我们经常利用不同的时间尺度对数据进行描述和分析。下面利用python实现月度数据转换为季度数据的方法。
数据形式
输入数据为Excel,数据形式如图,第一行为标签,时间、年、月、数据。
代码
代码比较简单,pandas实在好用。
import pandas as pd
def season_count(path,output):
'''
Get the seasonal data of each year
:param path: the data path
:param output: the output path
:return:None
'''
data = pd.read_excel(path,sheet_name="Sheet1")
data["season"] = data["month"].map({3:"spring",4:"spring",5:"spring",6:"summer",7:"summer",
8:"summer",9:"fall",10:"fall",11:"fall",12:"winter",1:"winter",2:"winter"})
result = data.groupby(["year","season"]).mean()
result.to_excel(output)
season_count("input_excel","output_excel")
map可以利用函数或者字典映射对dataframe里全部元素进行处理,groupby可以实现多列的分组统计。啊,大功告成!