library(dplyr)
library(broom)
data = tibble(
method = c("A", "A", "A", "A", "A", "A", "A", "A", "A", "A",
"B", "B", "B", "B", "B", "B", "B", "B", "B", "B"),
yield = c(89.7, 81.4, 84.5, 84.8, 87.3, 79.7, 85.1, 81.7,
83.7, 84.5, 84.7, 86.1, 83.2, 91.9, 86.3, 79.3,
82.6, 89.1, 83.7, 88.5))
# T-test assuming equal variance (unpaired)
t.test(formula = yield ~ method, data = data, var.equal = TRUE)
data: yield by method
t = -0.88158, df = 18, p-value = 0.3896
alternative hypothesis: true difference in means between group A and group B is not equal to 0
# T-test not assuming equal variance
t.test(formula = yield ~ method, data = data, var.equal = FALSE)
data: yield by method
t = -0.88158, df = 17.129, p-value = 0.3902
alternative hypothesis: true difference in means between group A and group B is not equal to 0
import pandas as pd
from scipy import stats
data = pd.DataFrame({
'method': ["A"]*10 + ["B"]*10,
'yield': [89.7, 81.4, 84.5, 84.8, 87.3, 79.7, 85.1, 81.7,
83.7, 84.5, 84.7, 86.1, 83.2, 91.9, 86.3, 79.3,
82.6, 89.1, 83.7, 88.5]})
a = data['yield'][data.method == "A"]
b = data['yield'][data.method == "B"]
# T-test assuming equal variance (unpaired)
r = stats.ttest_ind(a, b, equal_var=True)
print(f"t = {r.statistic:.5f}, df = {r.df:.0f}, "
f"p-value = {r.pvalue:.4f}")
t = -0.88158, df = 18, p-value = 0.3896
# T-test not assuming equal variance
r = stats.ttest_ind(a, b, equal_var=False)
print(f"t = {r.statistic:.5f}, df = {r.df:.3f}, "
f"p-value = {r.pvalue:.4f}")
t = -0.88158, df = 17.129, p-value = 0.3902