# Section 3; Question 1: # n = 52 p0 = 0.4 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) # make sure we can use the large sample tests z = (24 - n*p0) / sqrt( n*p0*(1-p0) ) z_alpha = qnorm(1-0.05) p_value = 1-pnorm(z) print(sprintf('z= %f; z_alpha= %f; P-value= %f', z, z_alpha, p_value)) # Section 3; Question 2: # p0 = 0.67 n = 35 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) z = (18 - n*p0) / sqrt( n*p0*(1-p0) ) z_alpha = qnorm(1-0.05/2) p_value = 2*(1-pnorm(abs(z))) print(sprintf('z= %f; z_alpha/2= %f; P-value= %f', z, z_alpha, p_value)) # Section 3; Question 3: # p0 = 0.65 n = 120 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) z = (72 - n*p0) / sqrt( n*p0*(1-p0) ) z_alpha = qnorm(1-0.05) p_value = pnorm(z) print(sprintf('z= %f; -z_alpha= %f; P-value= %f', z, -z_alpha, p_value)) # Section 3; Question 4: # p0 = 0.45 n = 200 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) num_of_successes = 90:110 # n*p0 = 90 so when n*p0 = 90 our z score is zero z = (num_of_successes - n*p0) / sqrt( n*p0*(1-p0) ) p_value = 1-pnorm(z) inds = p_value<=0.14 print('p-values:') print(p_value[inds]) print('Number of successes:') print(num_of_successes[inds]) # Section 3; Question 5: # source('../Chapter5/table_5_3_3.R') m = -log(0.5) n = length(data) p0 = 0.5 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) x = sum( data < m ) p_hat = x/n print(sprintf('x= %d; n= %d; p0= %f; p_hat= %f', x, n, p0, p_hat)) z = (x - n*p0) / sqrt( n*p0*(1-p0) ) p_value = 2*(1-pnorm(abs(z))) # for a two sided test print(sprintf('z= %f; P-value= %f', z, p_value)) # Section 3; Question 6: # p0 = 1/12 n = 348 ll = n*p0 - 3*sqrt(n*p0*(1-p0)) ul = n*p0 + 3*sqrt(n*p0*(1-p0)) print( c(0, ll, ul, n) ) x = 16 p_hat = x/n print(sprintf('x= %d; n= %d; p0= %f; p_hat= %f', x, n, p0, p_hat)) z = (x - n*p0) / sqrt( n*p0*(1-p0) ) p_value = 2*(1-pnorm(abs(z))) # for a two sided test print(sprintf('z= %f; P-value= %f', z, p_value)) # Section 3; Question 7: # k_star = 4:7 d = dbinom( k_star, 7, 0.5 ) print(rev(cumsum(rev(d)))) # Section 3; Question 9: # alpha = sum( dbinom( 0:3, 7, 0.75 ) ) print(alpha) ps = seq( 0.5, 0.9, length.out=100 ) powers = rep(NA, length(ps)) for(ii in 1:length(ps)){ powers[ii] = 1 - sum( dbinom( 0:3, 7, ps[ii] ) ) } plot( ps, powers, type='l', xlab='p', ylab='power' ) grid()