matlab - 如何在 Matlab 中从高斯 Copula 生成条件分布?
问题描述
Matlab 有一个内置函数可以从 copula 进行模拟:copularnd
我需要一个条件高斯 Copula。我有另一个用户
对Clayton Copula的建议: Clayton Copula Sampling
,其代码为:
任何人都可以通过示例说明如何使用GAUSSIAN Copula完成编码吗?
%% 使用条件 cdf 模拟 Clayton copula
%Example for theta=4
n=3000;
theta=5;
u=rand(1,n);
y=rand(1,n);
v=((y.^(1/(1+theta)).*u).^(-theta)+1-u.^(-theta)).^(-1/theta);
x1=norminv(u);
x2=norminv(v);
plot(x1,x2,'.')
解决方案
我刚刚找到了这段代码:
%%Simulations of bivariate Gaussian copulas
%Example for rho=0.5
n=30000;
rho=0.5;
x1=norminv(rand(1,n));
x2=norminv(rand(1,n));
X = [x1; x2];
C = [1, rho; rho,1]; %2x2 Correlation matrix
cholesky = chol(C,'lower'); %lower triangular matrix of C using Cholesky decomposition
Copsims = cholesky*X;
c1 = Copsims(1,:);
c2 = Copsims(2,:);
plot(c1,c2,'.')
corrcoef(c1,c2) %check for empirical rho, not on point the initial rho because of sampling error
推荐阅读
- javascript - 具有“表单控制”类的 PrestaShop 输入不起作用
- javascript - 无法在字符串上创建属性“onload”
- python - pygame:我想计算玩家精灵和敌人1之间的距离
- sql-server - SQL server: 将数据库从 LINUX 版本复制到 Win 版本
- android - 为什么我在创建 Intent 时会出现此错误,并且必须从第二个屏幕上 RecyclerView 中的 Firebase 传递数据
- angular - Angular Services:Promise 返回奇怪的结果
- cofoundry - 如何使用 Cofoundry 在程序集中嵌入视图文件
- javascript - JavaScript 中无法解释的浮点除法行为
- php - 使用 Simplesamlphp 在 AuthnRequest 中为 Extensions 标签添加命名空间
- r - 如何在 R 中使用 xpath 获得评论