用 R 中的 getSymbols 数据替换排列列表

Replace list of permutations with getSymbols data in R

我下载了一些股票数据:

require("quantmod")
s <- c("AAPL", "ADBE", "ADI", "ADP", "ADSK") 
e <- new.env()
getSymbols(s, src='yahoo',  from='2015-01-10',  env = e )

#get closing prices
close <- do.call(merge, eapply(e, function(x) Cl(x)))

我找到了所有符号名称对:

#find all the pairwise permutations
perm<-combn(s,2)
perm
[,1]   [,2]   [,3]   [,4]   [,5]   [,6]   [,7]   [,8]  [,9]   [,10] 
[1,] "AAPL" "AAPL" "AAPL" "AAPL" "ADBE" "ADBE" "ADBE" "ADI" "ADI"  "ADP" 
[2,] "ADBE" "ADI"  "ADP"  "ADSK" "ADI"  "ADP"  "ADSK" "ADP" "ADSK" "ADSK"

我想获取每个名称的 "close" 数据,并替换 "perm" 的每对组,以便稍后分析这些对。

如果你想得到一个数据框列表,每对一个,你可以尝试:

dfs <- lapply(seq_len(ncol(perm)), function(x) close[,paste0(perm[,x], ".Close")])

现在您可以使用 dfs[[1]]dfs[[2]] 等获取每对的 2 列数据帧。您可以使用 lapply 函数对每对进行统计分析。这是一个简单的示例,您可以在其中获取每个配对数据框的摘要:

lapply(dfs, summary)