Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
r2dtable列联表过于集中_R_Categorical Data_Contingency - Fatal编程技术网

r2dtable列联表过于集中

r2dtable列联表过于集中,r,categorical-data,contingency,R,Categorical Data,Contingency,我使用R的r2dtable函数生成具有给定边距的列联表。但是,在检查结果表时,值似乎过于集中于中点。例如: set.seed(1) matrices <- r2dtable(1e4, c(100, 100), c(100, 100)) vec.vals <- vapply(matrices, function(x) x[1, 1], numeric(1)) > table(vec.vals) vec.vals 36 37 38 39 40 41 4

我使用R的
r2dtable
函数生成具有给定边距的列联表。但是,在检查结果表时,值似乎过于集中于中点。例如:

set.seed(1)
matrices <- r2dtable(1e4, c(100, 100), c(100, 100))
vec.vals <- vapply(matrices, function(x) x[1, 1], numeric(1))

> table(vec.vals)
vec.vals
  36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   51 
   1    1    1    7   25   49  105  182  268  440  596  719  954 1072 1152 1048 
  52   53   54   55   56   57   58   59   60   61   62 
1022  775  573  404  290  156   83   50   19    6    2
set.seed(1)

矩阵要获得较少集中的矩阵,必须在列/行数、总数和矩阵数之间找到平衡。考虑下面的集合:

m2rep <- r2dtable(1e4, rep(100,2), rep(100,2))
m2seq <- r2dtable(1e4, seq(50,100,50), seq(50,100,50))
使用以下内容绘制此图:

par(mfrow = c(1,2))
plot(table(unlist(m2rep)))
plot(table(unlist(m2seq)))
par(mfrow = c(1,2))
plot(table(unlist(m20rep)))
plot(table(unlist(m20seq)))
给出:

现在考虑:

m20rep <- r2dtable(1e4, rep(100,20), rep(100,20))
m20seq <- r2dtable(1e4, seq(50,1000,50), seq(50,1000,50))
使用以下内容绘制此图:

par(mfrow = c(1,2))
plot(table(unlist(m2rep)))
plot(table(unlist(m2seq)))
par(mfrow = c(1,2))
plot(table(unlist(m20rep)))
plot(table(unlist(m20seq)))
给出:

正如您所看到的,使用参数会有所帮助


Hth

< P>你需要考虑的是,任何给定的随机抽取几乎都不可能有35的左上角值。1e4尝试可能不足以实现此类事件。看看理论预测(由Rhelp名单上的P.Dalgaard今早提供):

如果增加绘图次数,则单个值为1“的概率将增大:


我想保留边距为
c(100100),c(100100)
。我不明白你的解决方案是如何做到这一点的。@paljenczy我的解决方案确实没有做到这一点。但因为您在问题中没有具体说明该要求,所以我不知道;-)“有什么办法可以做到这一点吗?@paljenczy我会在这个周末看看
 round(dhyper(0:100,100,100,100)*1e4)
  [1]    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
 [18]    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
 [35]    0    0    0    1    4    9   21   45   88  160  269  417  596  787  959 1081 1124
 [52] 1081  959  787  596  417  269  160   88   45   21    9    4    1    0    0    0    0
 [69]    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
 [86]    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
vec.vals <- vapply(matrices, function(x) x[1, 1], numeric(1)); table(vec.vals)
vec.vals
    33     34     35     36     37     38     39     40     41     42     43     44     45 
     1      3      8     47    141    359    864   2148   4515   8946  15928  27013  41736 
    46     47     48     49     50     51     52     53     54     55     56     57     58 
 59558  78717  96153 108322 112524 107585  96042  78054  60019  41556  26848  16134   8627 
    59     60     61     62     63     64     65     66     68 
  4580   2092    933    351    138     42     11      4      1 
round(dhyper(0:100,100,100,100)*1e6)
  [1]      0      0      0      0      0      0      0      0      0      0      0      0
 [13]      0      0      0      0      0      0      0      0      0      0      0      0
 [25]      0      0      0      0      0      0      0      0      0      1      4     13
 [37]     43    129    355    897   2087   4469   8819  16045  26927  41700  59614  78694
 [49]  95943 108050 112416 108050  95943  78694  59614  41700  26927  16045   8819   4469
 [61]   2087    897    355    129     43     13      4      1      0      0      0      0
 [73]      0      0      0      0      0      0      0      0      0      0      0      0
 [85]      0      0      0      0      0      0      0      0      0      0      0      0
 [97]      0      0      0      0      0