Python3 如何使用Pandas库将日数据转换为周数据、月数据或季度数据
最近碰到了需要对某只股票的时间序列日数据,转换为3天、5天、周数据、月数据、两月一次的数据(bimonthly data)、季度数据的需求,做个笔记记录一下:
import pandas as pd
''' 将数据转换为时间序列数据, 调用pandas的to_datetime函数'''
data['trade_date'] = pd.to_datetime(data['trade_date'])
'''获取周数据:调用resample 重采样方法,对数据每周采一次样,根据我的需求,取最后一个作为close price'''
weekly_data = data.resample('W', on="trade_date").last()
'''获取bi-weekly data,每两周采一次样,返回两周内数据的均值; 频率可以改为 ‘3W' 等'''
weekly_data = data.resample('2W', on="trade_date").mean()
'''同理获取月数据/bi-monthly 数据'''
monthly_data = data.resample('M', on="trade_date").last()
bimonthly_data = data.resample('2M', on="trade_date").last()
'''转为季度数据'''
quarterly_data = data.resample('Q', on="trade_date").last()
resample 方法也可以对分钟数据进行重采样,更多用法详见官方文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.resample.html?highlight=resample#pandas.DataFrame.resample
转载请注明原文地址:https://ipadbbs.8miu.com/read-13402.html