我正在尝试以10只股票的价格构建qq图。
我想使用FOR循环构建这些图,但是却收到错误消息-如何修复代码?
我从Yahoo Finance下载了股票的股价。我只提取了每日调整后的价格,然后将它们组合成一个包含十列的数据框。我没有在数据框中添加日期。
代码如下:
par(mfcol=c(2,5),mar=c(2,2,2,2))
for(varname in names(stocks)) {
qqnorm(stocks[varname])
}
我收到错误消息“错误:必须在[
中使用向量,而不是类矩阵的对象。”
预先感谢您的帮助。
答案 0 :(得分:2)
qqnorm
在输入中采用向量:
qqnorm(y,...)
y 第二个或唯一的数据样本。
您可以像这样从数据框中获取y
:
df[[stock_name]]
df$stock_name
或者,如果要处理矩阵:
mat[, col_number]
mat[, stock_name]
这是一个简单的例子:
s <- matrix(rnorm(1000), 100, 10)
colnames(s) <- letters[1:10]
for (i in colnames(s)){
qqnorm(s[,i])
}