我正在使用R
版本3.3.2和软件包copula
版本0.999-15来评估正常copula对数据的拟合度。我的数据和代码是:
数据:https://www.dropbox.com/s/tdg8bfzmy4nd1dd/jumps.dat?dl=0
library(copula)
data <- read.csv(file="jumps.dat", head=F, sep="")
cop_model <- ellipCopula("normal", dim = 2)
m <- pobs(as.matrix(data))
fitCopula(cop_model, m, method = 'mpl')
运行代码后,我收到以下错误:
Error in `freeParam<-`(`*tmp*`, value = estimate) : the length of 'value' is not equal to the number of free parameters
Calls: fitCopula ... fitCopula.ml -> fitCopStart -> fitCopula.icor -> freeParam<-
Execution halted
我不知道这里发生了什么。 Clayton和Gumbel的配合非常好。在网上搜索类似的错误,我什么都没找到。阅读文档(https://www.rdocumentation.org/packages/copula/versions/0.999-15/topics/fitCopula吗?)以获得
ellipCopula
的一些特定信息,我发现了posDef
的特定选项,但是它根本没有返回任何解决方案。 最佳答案
旧问题,但是我发现了,因此将分享我的解决方案。
尝试运行以下命令,这是一个最小的工作示例:
library(copula)
print("-----------")
mycop <- ellipCopula("normal", dim=4)
data <- matrix(runif(400), nrow=4)
fitCopula(mycop, t(data))
print("-----------")
对我来说,如果我打开R并逐行键入这行,那会很好,但是如果我使用Rscript作为脚本运行,那会失败。解决方案是您还需要
library(methods)
。由于某种原因,它可以与
copula v0.999-v14
一起使用,但是被v0.999-v16
破坏了。唉。关于r - 正常眼睑安装中的“freeParam”错误[R],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41209891/