我是 R 编程环境的新手。谁能帮我解决以下问题:
我有一个.csv
包含 100 多家公司(每家 207 天)的股票回报数据的文件。我需要估计GARCH
每个公司的波动率并将所有公司的输出保存在一个.csv
文件中。我的数据如下所示:
以下是我迄今为止尝试过但未成功的可重现代码:
library(fGarch)
stdata <- read.csv("StockData.csv", header = T)
out <- vector("list",c(437))
for(j in length(names(stdata[,-1]))) {
fit = garchFit(~arma(1,0)+garch(1,1), data = stdata[,j], trace = F)
volatility(fit)
out = as.data.frame(volatility(fit))
}
write.csv(out, 'volatility.csv')
输出.csv
文件仅打印最后一家公司(第 100 家公司)的波动率。我还收到以下警告消息:
Warning message:
Using formula(x) is deprecated when x is a character vector of length > 1.
Consider formula(paste(x, collapse = " ")) instead.
我的预期输出如下:
请告诉我是否有办法在一个.csv
文件中一次获取所有波动率。