Если в первом эксперименте у меня есть переменные var1a
и var2a
, я хочу получить апостериор из этих данных, которые будут использоваться с пакетом BayesFactor в качестве rscale (предыдущий) для второго эксперимента с аналогичными переменными var1b
иvar2b
.Вопрос в том, как мне получить это значение, используя R (возможно, с пакетом BayesFactor)?
Как я понимаю, r-шкала должна в основном иметь то же значение, что и ожидаемое значение Коэна d (т. Е. Стандартизированная средняя разницана основании предыдущего результата).Имея это в виду, я ввожу следующий код:
library(MBESS)
library(BayesFactor)
var1 = c(9,8,6,7,8,6,5,7,8,8)
var2 = c(3,4,5,6,7,5,3,2,4,5)
ttest = t.test(var1, var2, paired=T)
ci.sm(ncp = ttest$statistic, N = length(var1), conf.level = .95)$Standardized.Mean # this gives effect size as d = 1.494293
Теперь вместо новых данных я использую это значение для тех же переменных, что и тест (как если бы второй эксперимент точно повторил первый).
as.vector( ttestBF(var1, var2, paired = T, rscale = 1.494293) ) # with actual effect size as r-scale, BF = 43.78086
Я бы тогда ожидал, что пик BF находится в этой точке, поэтому 43,78086.
Однако, когда я проверяю другие значения, пик на самом деле, когда я даю r-шкалу на отметке 1,30:
as.vector( ttestBF(var1, var2, paired = T, rscale = 1.50) ) # smaller: 43.7633
as.vector( ttestBF(var1, var2, paired = T, rscale = 1.30) ) # larger: 44.07731
as.vector( ttestBF(var1, var2, paired = T, rscale = 1.25) ) # again smaller: 44.03929
Так что, как я понимаю, это не правильный априор.