R - имена димов массива отличаются от размеров. Длина Dimnames - PullRequest
0 голосов
/ 24 марта 2020

Я застрял, пытаясь выяснить, почему dim (x) отличается от dimnames (x) в R.

Я пытаюсь построить многомерную модель для прогнозирования естественного цены на ресурсы. Я использую пакет rmgarch.

#I'm merging the data from different datasets
ModelWielowymiarowy_mergeDanych <- merge.xts(gaz_xts$LogRet_gaz, ropa_xts$LogRet_ropa, benzyna_xts$LogRet_benzyna, vix_xts$LogRet_vix) 

#Filling any NA's
ModelWielowymiarowy_mergeDanych <- na.fill(ModelWielowymiarowy_mergeDanych, "extend")

#Calculating VAR
var2<-VAR(y=ModelWielowymiarowy_mergeDanych,p=14)

#Calculating residuals
Dat<-residuals(var2)

#Specifying 2 GARCH models

spec01 = ugarchspec(mean.model=list(armaOrder=c(0,0),include.mean=F),
                  variance.model=list(garchOrder=c(1,1), model="apARCH"),
                  distribution.model = "std")
spec02 = ugarchspec(mean.model=list(armaOrder=c(0,0),include.mean=F),
                  variance.model=list(garchOrder=c(1,1), model="sGARCH"),
                  distribution.model = "std")

#Merging models
ccc.garch01.spec = dccspec(uspec = multispec(c(spec01,spec02)), dccOrder = c(0, 0), 
    distribution = "mvt")

#Model fit
ccc.fit <- dccfit(ccc.garch01.spec, data = Dat)

И я получаю следующую ошибку на ccc .fit:

Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent

И я не уверен, почему, я сделал некоторые тесты:

#Dimensions of my residuals data-set:
dim(Dat)

#Output: [1] 3249    4

#Dimnames
length(dimnames(Dat))

#Output: [1] 2

Я уверен, что length(dimnames(Dat)) должен вернуть 4 (поскольку там действительно 4 столбца), чтобы ccc.fit работал правильно.

Может кто-нибудь помочь мне с этой ошибкой? Дайте мне знать, если мне нужно предоставить еще какие-то данные. С уважением.

...