首页 > 解决方案 > 我正在尝试计算 R 中每年的标准差和平均回报

问题描述

我三天前开始学习 R,所以请多多包涵……如果您发现我的代码或计算中有任何缺陷,请指出。

我试过这个,但每次都会收到错误消息:

table.AnnualizedReturns(Apple.Monthly.Returns[, 2:3, drop = FALSE], scale = 12, 
                    Rf = 0, geometric = TRUE, digits = 4)

checkData(R) 中的错误:数据无法转换为时间序列。如果您尝试从具有一列的数据对象中传递名称,则应使用“data[rows, columns, drop = FALSE]”形式。行名应具有标准日期格式,例如“1985-03-15”。

正如你可以清楚地看到我不知道我在做什么。

这是到目前为止我写的每一行代码:

Dates <- Data_Task2$`Names Date`[1801:2270]
as.numeric(Dates)
Dates <- ymd(Dates)
Monthly.Return <- Data_Task2$Returns[1801:2270]
Monthly.Return <- as.numeric(Monthly.Return)
Apple.Monthly.Returns <- data.frame(Dates, Monthly.Return)
Log.return = log(Monthly.Return + 1)
Apple.Monthly.Returns$Log.return = log(Apple.Monthly.Returns$Monthly.Return + 1)

标签: r

解决方案


您应该查看 Tidyverse,特别是 dplyr ( https://dplyr.tidyverse.org/ )。

这让你有一个很好的起点: https ://www.r-bloggers.com/2014/03/using-r-quickly-calculating-summary-statistics-with-dplyr/


推荐阅读