1

我正在尝试使用 Rcall 从 Julia 调用 R 函数 garchFit。当我直接在 R 中做事时,一切都很好:以下工作

    library("fGarch")
    library("rugarch")
    spxData <- read.csv(file = 'SPXlogreturns.csv')
    y = spxData$y
    fit.arch <- garchFit(~garch(1,0),data=y,trace=F,include.mean=FALSE)

但是当我在 Julia 中有相同的日志返回向量并尝试使用 RCall 做同样的事情时:

    using RCall
    @rput y
    R"""
    library("fGarch")
    library("rugarch")
    fit.arch <- garchFit(~garch(1,0),data=y,trace=F,include.mean=FALSE)
    """

我收到错误Multivariate data inputs requires lhs for the formula。然而,当我从 R @rget y 回来时,它是一个向量,所以我不明白 garchFit 想要什么。非常感谢任何帮助。

4

1 回答 1

1

如果有人用谷歌搜索它并遇到类似的问题,答案是您需要取消列出。没有(至少对我而言)显而易见的原因,@rput 在 R 中创建了一个列表,而不是一个向量。所以答案是 using RCall @rput y R""" library("fGarch") library("rugarch") yy <- unlist(y) fit.arch <- garchFit(~garch(1,0),data=yy,trace=F,include.mean=FALSE) """

于 2021-11-08T14:41:41.020 回答