R中的定制Fisher精确测试

时间:2017-03-09 03:24:11

标签: r statistics

提前初学者的问题!
(花了很多时间后,找不到直截了当的解决方案..)

在尝试所有相关帖子后,我似乎无法找到答案,也许是因为我的问题非常基本。

我想在我的数据上运行fisher.test(无论数据,对我来说并不重要 - 我的是来自QR33的鲁宾儿童电视研讨会 - http://www.stat.columbia.edu/~cook/qr33.pdf)它必须模拟完全随机化的实验。

我的假设是,在这种情况下RCT意味着所有单位都有相同的概率被分配到治疗(1 / N)。 (当然,如果我错了,请纠正我。谢谢)。

我被要求创建一个自定义函数,我的函数必须包含以下参数:

  1. 治疗观察(病媒)
  2. 控制观察(矢量)
  3. 表示尖锐零假设的值(例如零)的标量;和
  4. 该功能应运行的模拟实验的数量。
  5. 在挖掘R的fisher.test时,我发现我可以指定X,Y和许多其他参数,但我不确定以下内容:

    1. Y的含义是什么? (即根据统计意义,a factor object; ignored if x is a matrix.不提供信息)。
    2. 如何指定我的原假设? (即如果我不想使用0。)我看到there is a class "htest" with null.value,但我如何在函数中使用它?
    3. 注册模拟数量,我的计划是通过循环运行所有内容 - 听起来很昂贵 - 任何想法如何更好地编写它?
    4. 感谢您的帮助 - 我认为这不是一件容易的事,希望对许多人有用。

      干杯,

      NB - 以下解释被发现不满意:

      https://www.r-bloggers.com/contingency-tables-%E2%80%93-fisher%E2%80%99s-exact-test/

      https://stats.stackexchange.com/questions/252234/compute-a-fisher-exact-test-in-r

      https://stats.stackexchange.com/questions/133441/computing-the-power-of-fishers-exact-test-in-r

      https://stats.stackexchange.com/questions/147559/fisher-exact-test-on-paired-data

1 个答案:

答案 0 :(得分:0)

我并不完全清楚Fisher测试对于你想要做的事情来说是正确的(对于stats.SE来说这是一个很好的问题)但是我会解决R问题。

  1. 正如“详细信息”部分开头所述,R提供两种方式来指定您的数据。

    您可以1.为参数x提供一个计数列表(省略y的任何内容),或者您可以将个体观察结果作为两个向量来指示行和列类别(哪个是哪个并不重要);每个向量包含xy的因子。 [我不确定为什么它也不允许您将x指定为计数向量,将y指定为因子的数据框,但它很容易转换为]

    < / LI>
  2. 通过Fisher检验,观察类别可以交换的零假设(有条件地在边缘上)是独立的,但你可以选择使其成为一个或两个尾(通过alternative参数)

  3. 我不确定我是否清楚地了解模拟方面,但我几乎从不使用循环进行模拟(不是为了效率,而是为了清晰和简洁)。函数replicate非常适合进行模拟。我大致每天使用它,有时多次使用它。