# pingouin.bayesfactor_ttest

pingouin.bayesfactor_ttest(t, nx, ny=None, paired=False, tail='two-sided', r=0.707)[source]

Bayes Factor of a T-test.

Parameters
tfloat

T-value of the T-test

nxint

Sample size of first group

nyint

Sample size of second group (only needed in case of an independent two-sample T-test)

pairedboolean

Specify whether the two observations are related (i.e. repeated measures) or independent.

tailstring

Specify whether the test is ‘one-sided’ or ‘two-sided’

rfloat

Cauchy scale factor. Smaller values of r (e.g. 0.5), may be appropriate when small effect sizes are expected a priori; larger values of r are appropriate when large effect sizes are expected (Rouder et al 2009). The default is 0.707.

Returns
bfstr

Scaled Jeffrey-Zellner-Siow (JZS) Bayes Factor (BF10). The Bayes Factor quantifies the evidence in favour of the alternative hypothesis.

Notes

Adapted from a Matlab code found at https://github.com/anne-urai/Tools/tree/master/stats/BayesFactors

If you would like to compute the Bayes Factor directly from the raw data instead of from the T-value, use the pingouin.ttest() function.

The JZS Bayes Factor is approximated using the formula described in ref [1]:

$BF_{10} = \frac{\int_{0}^{\infty}(1 + Ngr^2)^{-1/2} (1 + \frac{t^2}{v(1 + Ngr^2)})^{-(v+1) / 2}(2\pi)^{-1/2}g^ {-3/2}e^{-1/2g}}{(1 + \frac{t^2}{v})^{-(v+1) / 2}}$

where t is the T-value, v the degrees of freedom, N the sample size and r the Cauchy scale factor (i.e. prior on effect size).

References

1(1,2)

Rouder, J.N., Speckman, P.L., Sun, D., Morey, R.D., Iverson, G., 2009. Bayesian t tests for accepting and rejecting the null hypothesis. Psychon. Bull. Rev. 16, 225–237. https://doi.org/10.3758/PBR.16.2.225

Examples

1. Bayes Factor of an independent two-sample T-test

>>> from pingouin import bayesfactor_ttest
>>> bf = bayesfactor_ttest(3.5, 20, 20)
>>> print("Bayes Factor: %s (two-sample independent)" % bf)
Bayes Factor: 26.743 (two-sample independent)

1. Bayes Factor of a paired two-sample T-test

>>> bf = bayesfactor_ttest(3.5, 20, 20, paired=True)
>>> print("Bayes Factor: %s (two-sample paired)" % bf)
Bayes Factor: 17.185 (two-sample paired)

1. Bayes Factor of an one-sided one-sample T-test

>>> bf = bayesfactor_ttest(3.5, 20, tail='one-sided')
>>> print("Bayes Factor: %s (one-sample)" % bf)
Bayes Factor: 34.369 (one-sample)