生成与现有数据相关的随机序数变量

时间:2019-07-02 00:55:07

标签: r simulation correlation

我正在使用GenOrd包生成随机序数变量。

使用先前的文字,我设法运行了GenOrd软件包。

https://www.r-bloggers.com/simulating-random-multivariate-correlated-data-categorical-variables/ How to define 'marginal distribution' in GenOrd package?

但是,我找不到如何使用“现有”数据生成随机序数变量。据我所知,GenOrd仅生成全新的变量。

让我们举个例子,我生成“上一个”变量,其边际分布为1的0.5、0.1的2、0.4的3。

set.seed(1001)
previous<-sample(c(1, 2, 3), size = 100, replace = TRUE, prob = c(0.5, 0.1, 0.4))
previous

  [1] 2 1 1 1 1 3 1 1 1 3 1 1 3 1 1 3 1 1 1 3 3 1 2 3 1 3 3 1 2 1 3 2 2 1 1 1 1 3 3 1 1 1 3 1 2 1 3 1 3 3 1 1 1 3 3 3 1 1 1 2
 [61] 3 3 3 1 1 3 2 1 1 1 2 3 2 3 1 1 1 3 3 1 1 3 3 1 3 3 1 1 1 1 3 3 1 1 3 2 3 2 2 1

,我将生成一个新变量,并假定其与先前变量的对应关系为0.8。所以相关矩阵是

> R <- matrix(c(1,0.8,0.8,1),2,2)
> R
     [,1] [,2]
[1,]  1.0  0.8
[2,]  0.8  1.0

在这种情况下,如何使用现有数据生成新的序数变量?如果有比使用GenOrd包更好的方法,我将非常感谢您的帮助。

0 个答案:

没有答案