我想在Python中计算k维向量的Copula,其中k> 2。
当k = 2时,我找到了AMBHAS package,这似乎工作正常,但据我所知它只适用于二维,即双变量,copulas。
经过多挖掘后,我发现scikits.statsmodels,但据我所知,它是沙箱形式。
我可以自己手动编写代码,这不是问题,但我希望通过使用标准软件包来避免这样做的麻烦。
Python中是否有可用的多变量Copula包,我根本无法找到?
答案 0 :(得分:2)
对于藤蔓 - copula,您可以尝试以下一种或所有:
所有这些python软件包的功能似乎都不如R软件包那么好:VineCopula。当k> 1时,所有这些包装都可以适合并从藤蔓丛中取样。 2.
答案 1 :(得分:1)
尝试使用copulae
软件包。可以找到文档here
答案 2 :(得分:1)
有一个用于多变量高斯copula的python软件包 https://pypi.org/project/copula/
相应的Github存储库:github
通过pip安装:
pip install copula
用法:
from copula import Copula
data = [[2,1,2,4],[3,1,7,4],[2,9,1,0],[3,6,1,6] ]
cop = Copula(data)
samples = cop.gendata(3)
print(samples)
[2.697128268374179, 6.29726013955287, 2.983951810593502, 2.1149729235834496], [3.0, 1.0, 6.831369733333171, 4.631091408593663], [2.147377031275032, 6.75098812552581, 1.9789800708813163, 1.1200891337867478]]