创建具有固定边距的意外事件 table
Creating a contingency table with fixed margins
我正在尝试创建一个 table,其中包含来自中心超几何分布的随机条目,其中列和行的总数是固定的。
不过,我可以使列总和固定且相等,但不能使行总和固定。我已经阅读了其他答案,但 none 似乎专门讨论了如何去做,我的 R 知识非常基础,可以在一些帮助或正确方向上做。
为了从中心超几何分布中获取值,我使用了 BiasedUrn
包。
例如:
N <- 50
rand <- 10
n1 <- 25
odds0 <- rep(1,K)
m0 <- rep(N/K,K)
library(BiasedUrn)
i <- as.table(rMFNCHypergeo(nran=rand, n=n1, m=m0, odds=odds0))
addmargins(i)
A B C D E F G H I J Sum
A 5 3 5 7 5 5 6 6 5 5 52
B 8 7 4 5 5 6 3 4 5 4 51
C 3 6 4 4 4 5 6 8 5 4 49
D 4 4 6 3 6 4 5 3 3 5 43
E 5 5 6 6 5 5 5 4 7 7 55
Sum 25 25 25 25 25 25 25 25 25 25 250
我希望使所有列总和等于 25,并且所有行总和等于我可以选择的另一个数字,例如 50。
您是否在寻找来自 base R 的 r2dtable
函数?
set.seed(101)
tt <- r2dtable(n=1,c=rep(25,6),r=rep(50,3))
addmargins(as.table(tt[[1]]))
## A B C D E F Sum
## A 7 9 7 11 9 7 50
## B 10 7 10 6 7 10 50
## C 8 9 8 8 9 8 50
## Sum 25 25 25 25 25 25 150
我正在尝试创建一个 table,其中包含来自中心超几何分布的随机条目,其中列和行的总数是固定的。
不过,我可以使列总和固定且相等,但不能使行总和固定。我已经阅读了其他答案,但 none 似乎专门讨论了如何去做,我的 R 知识非常基础,可以在一些帮助或正确方向上做。
为了从中心超几何分布中获取值,我使用了 BiasedUrn
包。
例如:
N <- 50
rand <- 10
n1 <- 25
odds0 <- rep(1,K)
m0 <- rep(N/K,K)
library(BiasedUrn)
i <- as.table(rMFNCHypergeo(nran=rand, n=n1, m=m0, odds=odds0))
addmargins(i)
A B C D E F G H I J Sum
A 5 3 5 7 5 5 6 6 5 5 52
B 8 7 4 5 5 6 3 4 5 4 51
C 3 6 4 4 4 5 6 8 5 4 49
D 4 4 6 3 6 4 5 3 3 5 43
E 5 5 6 6 5 5 5 4 7 7 55
Sum 25 25 25 25 25 25 25 25 25 25 250
我希望使所有列总和等于 25,并且所有行总和等于我可以选择的另一个数字,例如 50。
您是否在寻找来自 base R 的 r2dtable
函数?
set.seed(101)
tt <- r2dtable(n=1,c=rep(25,6),r=rep(50,3))
addmargins(as.table(tt[[1]]))
## A B C D E F Sum
## A 7 9 7 11 9 7 50
## B 10 7 10 6 7 10 50
## C 8 9 8 8 9 8 50
## Sum 25 25 25 25 25 25 150