Advertisement
Guest User

P value simulations

a guest
Sep 21st, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 1.44 KB | None | 0 0
  1. null_true_p <- function(n) {
  2.   null <- c(runif(n))
  3.   result <- quantile(null, probs = c(0.00, 0.025, 0.05, 0.25, 0.50, 0.75, 0.95, 0.975, 1) )
  4.   hist(null)
  5.   result
  6. }
  7.  
  8. null_false_p <- function(sample, sim_size) {
  9.   reject <- numeric(sim_size)
  10.     for (i in 1:sim_size) {
  11.       x <- rnorm(sample, 100, 15)
  12.       y <- rnorm(sample, 108, 15)
  13.       reject[i] <- t.test(x,y,alternative="greater")$p.value
  14.       result <- quantile(reject, probs = c(0.00, 0.025, 0.05, 0.25, 0.50, 0.75, 0.95, 0.975, 1))
  15.      }
  16.     hist(reject)
  17.     result
  18. }
  19.  
  20. true_null_meta <- function(sample, sim_size ) {
  21.   stouffer <- numeric(sim_size)
  22.   for (i in 1:sim_size) {
  23.     null <- runif(sample)
  24.     z_score <- c(qnorm(null))
  25.     stouffer[i] <- sum( z_score/sqrt(sample) )
  26.     result <- quantile(stouffer, probs = c(0.00, 0.025, 0.05, 0.25, 0.50, 0.75, 0.95, 0.975, 1))
  27.   }
  28.   hist(stouffer)
  29.   result
  30. }
  31.  
  32. false_null_meta <- function(sample, sim_size) {
  33.   z_scores <- numeric(sample)
  34.   p_vals   <- numeric(sample)
  35.   stouffer <- numeric(sim_size)
  36.   for (i in 1:sim_size) {
  37.     x <- rnorm(sample, 100, 15)
  38.     y <- rnorm(sample, 108, 15)
  39.     p_vals[i]   <- t.test(x,y, alternative = "greater")$p.value
  40.     z_scores[i] <- c(qnorm(p_vals[i]))
  41.     stouffer[i] <- sum( z_scores / sqrt(sample) )
  42.     result_z    <- quantile(z_scores, probs = c(0.00, 0.025, 0.05, 0.25, 0.50, 0.75, 0.95, 0.975, 1))
  43.   }
  44.    hist(stouffer)
  45.    print(result_z)
  46.    result_s    
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement