def cochran(sample, confidence_level): # Validations check_for_valid_numbers(sample) empty_list_check(sample) # Formula: (Z^2)(p)(q) / (e^2) -> https://www.statisticshowto.com/probability-and-statistics/find-sample-size/ # Assuming p is 0.5 # calculate z from a given confidence interval z = CalculateZValue.calculate_zvalue(confidence_level) margin_of_error_result = square(margin_of_error(sample, confidence_level)) return division(margin_of_error_result, multiplication(multiplication(square(z), 0.5), 0.5))
def margin_of_error(self, sample, confidence_level): self.result = margin_of_error(sample, confidence_level) return self.result
def margin_of_error(self, a, b, z, N): data = listofNumNoSeed(a, b) sample = simple_rand_sampling(data, N) self.result = margin_of_error(sample, z, N) return sample, self.result
def margin_of_error(self, data, p): self.result = margin_of_error(data, p) return self.result
def confidence_interval_sample(data, x): me = margin_of_error(data, x, 1) x_bar = mean(data) return x_bar - me, x_bar + me