ich eine Referenzklasse wie folgt bin definieren:In R Referenzklasse, wie Felder als „XTS“ definieren Objekte
test = setRefClass(
Class = "test",
fields = c(
edata = "data.frame"
)
)
test$methods(
getdata = function(newdata,...){
edata <<- newdata
}
)
Und dann verwende ich den folgenden Code:
test1 = test$new()
x = xts(data.frame(val=1, val2=2), order.by=as.Date("2015-01-02"))
test1$getdata(x)
gibt es eine Fehlermeldung, dass die Klasse von "Zoo" "kann nicht data.frame zuweisen" I modifiziert dann den Code:
test = setRefClass(
Class = "test",
fields = c(
edata = "zoo"
)
)
Aber, Nach Bibliothek (Zoo) oder Bibliothek (XTS), werde ich eine folgende Meldung:
Error in as(value, fieldClass, strict = FALSE) :
internal problem in as(): “xts” is(object, "zoo") is TRUE, but the metadata asserts that the 'is' relation is FALSE
Ich brauche zu verwenden, um die edata als „XTS“ Objekt in dieser Klasse wirklich, weil ich so viele Funktionen nutzen würde das haben schon für xts geschrieben!
Gibt es eine Möglichkeit, mit diesem Problem umzugehen?