@@ 257-283 (lines=27) @@ | ||
254 | + ', standard_error = ' + str(sampling_distribution.standard_error) + ')') |
|
255 | print('confidence level for 95% confidence level: ' + str(sampling_distribution.confidence_interval(0.95))) |
|
256 | ||
257 | def test_confidence_interval_with_sample_simulation(self): |
|
258 | grp1_sample = Sample() |
|
259 | grp2_sample = Sample() |
|
260 | ||
261 | for i in range(10): |
|
262 | if random() <= 0.6: |
|
263 | grp1_sample.add_category("OK") |
|
264 | else: |
|
265 | grp1_sample.add_category("CANCEL") |
|
266 | ||
267 | for i in range(9): |
|
268 | if random() <= 0.61: |
|
269 | grp2_sample.add_category("OK") |
|
270 | else: |
|
271 | grp2_sample.add_category("CANCEL") |
|
272 | ||
273 | sampling_distribution = ProportionDiffSamplingDistribution( |
|
274 | grp1_sample_distribution=SampleDistribution(grp1_sample, |
|
275 | categorical_value="OK"), |
|
276 | grp2_sample_distribution=SampleDistribution( |
|
277 | grp2_sample, |
|
278 | categorical_value="OK") |
|
279 | ) |
|
280 | self.assertEqual(sampling_distribution.distribution_family, DistributionFamily.simulation) |
|
281 | print('sampling distribution: (point_estimate = ' + str(sampling_distribution.point_estimate) |
|
282 | + ', standard_error = ' + str(sampling_distribution.standard_error) + ')') |
|
283 | print('confidence level for 95% confidence level: ' + str(sampling_distribution.confidence_interval(0.95))) |
|
284 | ||
285 | ||
286 | if __name__ == '__main__': |
|
@@ 217-240 (lines=24) @@ | ||
214 | + ', standard_error = ' + str(sampling_distribution.standard_error) + ')') |
|
215 | print('confidence level for 95% confidence level: ' + str(sampling_distribution.confidence_interval(0.95))) |
|
216 | ||
217 | def test_confidence_interval_with_sample_normal(self): |
|
218 | grp1_sample = Sample() |
|
219 | grp2_sample = Sample() |
|
220 | ||
221 | for i in range(100): |
|
222 | if random() <= 0.6: |
|
223 | grp1_sample.add_category("OK") |
|
224 | else: |
|
225 | grp1_sample.add_category("CANCEL") |
|
226 | ||
227 | for i in range(100): |
|
228 | if random() <= 0.61: |
|
229 | grp2_sample.add_category("OK") |
|
230 | else: |
|
231 | grp2_sample.add_category("CANCEL") |
|
232 | ||
233 | sampling_distribution = ProportionDiffSamplingDistribution(grp1_sample_distribution=SampleDistribution( |
|
234 | grp1_sample, categorical_value="OK"), |
|
235 | grp2_sample_distribution=SampleDistribution( |
|
236 | grp2_sample, categorical_value="OK")) |
|
237 | self.assertEqual(sampling_distribution.distribution_family, DistributionFamily.normal) |
|
238 | print('sampling distribution: (point_estimate = ' + str(sampling_distribution.point_estimate) |
|
239 | + ', standard_error = ' + str(sampling_distribution.standard_error) + ')') |
|
240 | print('confidence level for 95% confidence level: ' + str(sampling_distribution.confidence_interval(0.95))) |
|
241 | ||
242 | def test_confidence_interval_with_sample_stats_simulation(self): |
|
243 | grp1_sample_proportion = 0.6 |
@@ 76-96 (lines=21) @@ | ||
73 | self.assertFalse(reject_one_tail) |
|
74 | self.assertFalse(reject_two_tail) |
|
75 | ||
76 | def test_proportion_simulation(self): |
|
77 | sample = Sample() |
|
78 | ||
79 | for i in range(10): |
|
80 | if random() <= 0.6: |
|
81 | sample.add_category("OK") |
|
82 | else: |
|
83 | sample.add_category("CANCEL") |
|
84 | ||
85 | sampling_distribution = ProportionSamplingDistribution( |
|
86 | sample_distribution=SampleDistribution(sample, categorical_value="OK")) |
|
87 | ||
88 | testing = ProportionTesting(sampling_distribution=sampling_distribution, p_null=0.6) |
|
89 | ||
90 | print('one tail p-value: ' + str(testing.p_value_one_tail)) |
|
91 | print('two tail p-value: ' + str(testing.p_value_two_tail)) |
|
92 | reject_one_tail, reject_two_tail = testing.will_reject(0.01) |
|
93 | print('will reject p = 0.6 (one-tail) ? ' + str(reject_one_tail)) |
|
94 | print('will reject p = 0.6 (two-tail) ? ' + str(reject_two_tail)) |
|
95 | self.assertFalse(reject_one_tail) |
|
96 | self.assertFalse(reject_two_tail) |
|
97 | ||
98 | if __name__ == '__main__': |
|
99 | unittest.main() |
|
@@ 54-74 (lines=21) @@ | ||
51 | ||
52 | ||
53 | class ProportionTestingUnitTest(unittest.TestCase): |
|
54 | def test_proportion_normal(self): |
|
55 | sample = Sample() |
|
56 | ||
57 | for i in range(100): |
|
58 | if random() <= 0.6: |
|
59 | sample.add_category("OK") |
|
60 | else: |
|
61 | sample.add_category("CANCEL") |
|
62 | ||
63 | sampling_distribution = ProportionSamplingDistribution( |
|
64 | sample_distribution=SampleDistribution(sample, categorical_value="OK")) |
|
65 | ||
66 | testing = ProportionTesting(sampling_distribution=sampling_distribution, p_null=0.6) |
|
67 | ||
68 | print('one tail p-value: ' + str(testing.p_value_one_tail)) |
|
69 | print('two tail p-value: ' + str(testing.p_value_two_tail)) |
|
70 | reject_one_tail, reject_two_tail = testing.will_reject(0.01) |
|
71 | print('will reject p = 0.6 (one-tail) ? ' + str(reject_one_tail)) |
|
72 | print('will reject p = 0.6 (two-tail) ? ' + str(reject_two_tail)) |
|
73 | self.assertFalse(reject_one_tail) |
|
74 | self.assertFalse(reject_two_tail) |
|
75 | ||
76 | def test_proportion_simulation(self): |
|
77 | sample = Sample() |