r - 如何在 R 中生成相关的无序名义变量?
问题描述
我需要生成两个具有 N 个无序名义变量的样本,其中每个变量具有不同的级别数:
1 个样本:3d 变量取决于 2nd。
2 样本:所有变量都取决于第一个。
如何在 R(或通过 Rcpp 的 C++)中做到这一点?你能建议一些包装或一般的想法吗?
我rmult.bcl
在 SimCorMultRes 包中找到了函数,但据我所知,用它来生成具有不同级别数的名义变量是不可能的。
解决方案
我不太明白您对样本 1 和样本 2 的要求,但不难使一个变量的分布取决于另一个变量的内容。我将用两个变量来说明。V2 中值的分布取决于 V1 中的值。
set.seed(2019)
V1 = sample(c("A", "B"), 100, replace=TRUE)
NumA = sum(V1 == "A")
V2 = character(100)
V2[V1 == "A"] = sample(c("X", "Y", "Z"), NumA, replace=TRUE)
V2[V1 != "A"] = sample(c("X", "Y", "Z"), 100-NumA,
prob=c(0.6, 0.3, 0.1), replace=TRUE)
table(V1,V2)
V2
V1 X Y Z
A 11 24 18
B 30 14 3
推荐阅读
- git - 如何在 Gitlab 存储库中发生提交时触发某些脚本
- django - 如何在反应中通过 api 调用动态传递“pk”或某些 id
- asp.net-mvc - RequiredIf 具有不显眼验证的自定义验证器
- android - TileService 在 Android 9 中每 5 秒被杀死一次
- bash - 如何对 MM/DD/YYYY 格式的日期进行数学运算?
- c# - OleDbDataReader cmd.ExecuteReader() “枚举没有结果”
- python - 我尝试使用 python 从 google colab 中抓取错误代码。但它没有奏效
- php - 从多个页面收集 $_POST 数据
- javascript - Web-socket 适用于约 8KB 的小文件。但是对于 ~50KB 文件,我的连接断开
- java - 如何修复“sqlite-3.7.2-sqlitejdbc.dll:无法在 AMD 64 位平台上加载 IA 32 位 .dll”