One-tailed p-value
onetailed_p <- function(estimate, lower, upper) {
se <- (log(upper) - log(lower)) / 3.92
z <- log(estimate)/se
p <- pnorm(z)
return(p)
}
"One-tailed p-value (less than):"
one_tailed_p_value <- function(mean, lower, upper, alternative) {
se <- (upper - lower) / 3.92
if (alternative == "greater") {
z <- (upper - mean)/se
p_value <- 1 - pnorm(z)
} else if (alternative == "less") {
z <- (lower - mean) / se
p_value <- pnorm(z)
} else {
stop("Invalid alternative hypothesis. Use 'greater' or 'less'.")
}
return(p_value)
}
# Example data
lower <- 2.5
upper <- 4.8
mean <- 3.6
# Calculate p-values for both alternatives
p_value_greater <- one_tailed_p_value(lower, upper, mean, "greater")
p_value_less <- one_tailed_p_value(lower, upper, mean, "less")
# Print the results
cat("One-tailed p-value (greater than):", p_value_greater, "\n")
cat("One-tailed p-value (less than):", p_value_less)
留言
張貼留言