| @@ 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() |
|