开始使用免费开始使用

按周聚合,并以周三为周末

在本练习中,您将学习一种通用的聚合技巧:把日度数据聚合为周度数据,但周以周三为结束日。这在股票市场研究中很常见,用于避免周内季节性影响。

period.apply() 函数接收一个 xts 对象、时间段的端点,以及一个聚合函数。然后它会对每个端点之间的数据分组应用该函数。

endpoints() 函数可以为 period.apply() 计算时间段的端点,您也可以使用自定义端点。不过,您的自定义端点向量必须以 0 开头,并以您计划聚合的观测总数结尾,这与 endpoints() 的输出一致。

您将使用 .indexwday() 找到每周的周三。它返回 0-6 之间的数字,其中 Sunday=0。

本练习将使用前面练习中的每日联邦基金利率数据(DFF)。

本练习是课程的一部分

在 R 中导入与管理金融数据

查看课程

练习说明

  • 使用 .indexwday()DFF 的索引中获取星期几,并将结果赋给 index_weekdays
  • 使用 which() 函数在 index_weekdays 中找到周三的位置。将结果保存到 wednesdays
  • 补全命令,使 end_points 以 0 开头,并以总行数结尾,像 endpoints() 的输出一样。
  • 使用 period.apply()end_pointsDFF 聚合为每周平均值。将结果赋给 weekly_mean

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Extract index weekdays (Sunday = 0)


# Find locations of Wednesdays
wednesdays <- ___(index_weekdays == 3)

# Create custom end points
end_points <- c(___, wednesdays, ___)

# Calculate weekly mean using custom end points
编辑并运行代码