R 包 BayesFactor 中的贝叶斯因子值

Bayes Factor values in the R package BayesFactor

我已经按照 R 中 BayesFactor 包中关于如何 运行 贝叶斯 't-test' 使用默认先验的说明进行操作。

有些返回值是天文数字。

这是一个与巨大的贝叶斯因子进行比较的示例:

#install.packages('BayesFactor')
library(BayesFactor)

condition1 <- c(0.94, 0.9, 0.96, 0.74, 1, 0.98, 0.86, 0.92, 0.918367346938776, 
                0.96, 0.4, 0.816326530612245, 0.8, 0.836734693877551, 0.56, 0.66, 
                0.605263157894737, 0.836734693877551, 0.84, 0.9, 0.92, 0.714285714285714, 
                0.82, 0.5, 0.565217391304348, 0.8, 0.62)

condition2 <- c(0.34, 0.16, 0.23, 0.19, 0.71, 0.36, 0.02, 0.83, 0.11, 0.06, 
                0.27, 0.347368421052632, 0.21, 0.13953488372093, 0.11340206185567, 
                0.14, 0.142857142857143, 0.257731958762887, 0.15, 0.29, 0.67, 
                0.0515463917525773, 0.272727272727273, 0.0895522388059701, 0.0204081632653061, 
                0.13, 0.0612244897959184)

bf = ttestBF(x = condition1, condition2, paired = TRUE)
bf

这个returns:

Bayes factor analysis
--------------
[1] Alt., r=0.707 : 144035108289 ±0%

Against denominator:
  Null, mu = 0 
---
Bayes factor type: BFoneSample, JZS

在大多数情况下,比较范围从低于 1 到几百。但我担心这个值 (144035108289!) 表明我有错误。

仅供参考:与上述相同数据的原假设检验中的 p 值 = 4.649279e-14。

任何对此返回的 BF 的保证或见解将不胜感激。

我使用相同的包手动输入 t 值和样本大小来计算 BF:

exp(ttest.tstat(t=14.63, n1=27, rscale = 0.707)[['bf']])

它给出了相同的BF。这似乎主要是由于样本量相对较大 (27)。返回的BF好像是up-and-up