实现学生双样本 t 检验的自定义函数(R语言)
下面是一个用于实现学生双样本 t 检验的自定义函数的示例。在这个函数中,你需要输入两个样本的数据,并且可以选择是否进行方差齐性检验。函数将返回 t 统计量、自由度和 p 值。
mytest <- function(sample1, sample2, equal_var = TRUE) {
# 计算样本1和样本2的均值和标准差
mean1 <- mean(sample1)
mean2 <- mean(sample2)
sd1 <- sd(sample1)
sd2 <- sd(sample2)
# 计算样本1和样本2的大小
n1 <- length(sample1)
n2 <- length(sample2)
# 计算 t 统计量
if (equal_var) {
# 方差齐性检验
var_equal <- var.test(sample1, sample2)$p.value > 0.05
if (var_equal) {
se <- sqrt((sd1^2/n1) + (sd2^2/n2))
t_value <- (mean1 - mean2) / se
df <- n1 + n2 - 2
p_value <- 2 * pt(abs(t_value), df = df, lower.tail = FALSE)
} else {