我正试着在熊猫数据框中从每天到每月重新取样一些数据。我对pandas还不熟悉,也许我需要先格式化日期和时间,然后才能这样做,但是我没有找到一个好的教程来指导如何正确处理导入的时间序列数据。我发现的一切都是从雅虎或Quandl自动导入数据。
以下是我的数据框中的内容: dataframe segment screenshot
下面是我用来创建数据帧的代码:
#Import excel file into a Pandas DataFrame
df = pd.read_excel(open('2016_forex_daily_returns.xlsx','rb'), sheetname='Sheet 1')
#Calculate the daily returns
df['daily_ret'] = df['Equity'].pct_change()
# Assume an average annual risk-free rate over the period of 5%
df['excess_daily_ret'] = df['daily_ret'] - 0.05/252
有人能帮我理解我需要对数据框中的“日期”和“时间”列做些什么,以便我可以重新取样吗?
对于create
DataFrame
可以使用:我认为您可以先转换^{} 列} 和一些聚合函数,如
date
,然后使用^{sum
或mean
:要将每日数据重采样到每月数据,可以使用
resample
方法。特别是对于每日收益,下面的示例演示了一个可能的解决方案。以下数据取自AQR执行的分析。它代表了2019年5月的市场每日回报。以下代码可用于将数据构造为
pd.DataFrame
。假设您没有每日价格数据,可以使用以下代码从每日收益重新采样到每月收益。
如果你参考他们的monthly dataset,这证实了2019年5月的市场回报率接近
-6.52%
或-0.06532
。我在这里创建了一个与您类似的随机数据帧:
以下是收集每周计数总和的步骤,作为示例:
其中,目标的输出是:
相关问题 更多 >
编程相关推荐