コード:
A <- matrix(NA, nrow = 10, ncol = 3)
colnames(A) <- paste('trial', 1:3)
3番目の列に次とは異なる名前を付けたいと思いますtrial 3
:どうすればよいですか?
今いいよ:
library(vars)
data(Canada)
var.2c <- VAR(Canada, p = 2, type = "const")
pred <- predict(var.2c, n.ahead = 8, ci = 0.95)
の最初の値を確認したい場合は、ここで返されるメソッドpred
に応じて、入力する必要がありますpredict
> pred$fcst$e[1]
[1] 962.6557
e
必要な値を取得するには、時系列名を指定する必要があったことがわかります。上記のコードが関数に挿入された場合、pred$fcst$e[1]
時系列名を指定せずに呼び出すことはできません。そのため、別の時系列データフレームをカスタム関数に渡すことはできません。
例:X
時系列データフレームとします。それで
pred.var <- function(X) {
var.2c <- VAR(X, p = 2, type = 'const')
pred <- predict(var.2c, n.ahead = 8, ci = .95)
# return(pred$fcst$...) # Here lies the issue, because function must know X column name
}
上記の例からわかるように、関数は予測を返す必要pred.var
がある列の名前を知っているX
必要がありますが、から読み取られない限りそれはわかりませんX
。
何か案が?
ありがとう、