def main():
    """ TestingHypothesisMath.py """

    results = flip_some_coins_lots_of_times(number_of_times=100000,
                                            number_of_flips=1000,
                                            fairness=0.5)
    print 'Testing a single mean:', example_test_a_mean(
        results, target=500, significance_level=0.95)

    results_1 = flip_some_coins_lots_of_times(number_of_times=100000,
                                              number_of_flips=1000,
                                              fairness=0.5)
    results_2 = flip_some_coins_lots_of_times(number_of_times=100000,
                                              number_of_flips=1000,
                                              fairness=0.5)
    print 'Comparing two equal means:', example_compare_two_means(
        results_1, results_2)

    results_2 = flip_some_coins_lots_of_times(number_of_times=100000,
                                              number_of_flips=1000,
                                              fairness=0.3)
    print 'Comparing two unequal means:', example_compare_two_means(
        results_1, results_2)

    print 'Testing a single proportion:', example_test_a_proportion(p=0.1,
                                                                    n=100,
                                                                    target=0.1)

    print 'Comparing two equal proportions:', example_compare_two_proportions(
        p1=0.1, n1=1000, p2=0.1, n2=1000)

    print 'Comparing two unequal proportions:', example_compare_two_proportions(
        p1=0.1, n1=1000, p2=0.15, n2=1000)
def main():
    """ NonParametricMethods.py """

    print '---------- Normal data ---------------'
    normal_data = flip_some_coins_lots_of_times(10000, number_of_flips=1000, fairness=0.5, plot=True)
    normal_lower_bound, normal_upper_bound = get_confidence_intervals_using_the_normal_distribution(
                                                                                        normal_data)
    print 'normal: len', len(normal_data), 'mean', mean(normal_data)
    print 'Normality test for normal data:', test_for_normality(normal_data)
    print 'Confidence intervals for normal data:', normal_lower_bound, normal_upper_bound
    normal_lower_bound, normal_upper_bound = bootstrap_confidence_intervals(normal_data)
    print 'Bootstrapping confidence intervals for normal data:', normal_lower_bound, normal_upper_bound
    print

    print '---------- Powerlaw data -------------'
    powerlaw_data = create_random_non_normal_data(sample_size=10000, plot=True)
    print 'powerlaw: len', len(powerlaw_data), 'mean', mean(powerlaw_data)
    powerlaw_lower_bound, powerlaw_upper_bound = get_confidence_intervals_using_the_normal_distribution(
                                                                                        powerlaw_data)
    print 'Normality test for powerlaw data:', test_for_normality(powerlaw_data)
    print 'Confidence intervals for powerlaw data:', powerlaw_lower_bound, powerlaw_upper_bound
    powerlaw_lower_bound, powerlaw_upper_bound = bootstrap_confidence_intervals(powerlaw_data)
    print 'Bootstrapping confidence intervals for powerlaw data:', powerlaw_lower_bound, powerlaw_upper_bound
    print

    print '---------- Two equal normal means -----------------'
    data_1 = flip_some_coins_lots_of_times(10000, number_of_flips=1000, fairness=0.5)
    data_2 = flip_some_coins_lots_of_times(10000, number_of_flips=1000, fairness=0.5)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(data_2, data_1)
    print
    print '---------- Two unequal normal means ---------------'
    data_1 = flip_some_coins_lots_of_times(10000, number_of_flips=1000, fairness=0.5)
    data_2 = flip_some_coins_lots_of_times(10000, number_of_flips=1000, fairness=0.45)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(data_2, data_1)
    print
    print '---------- Two equal non-normal means -------------'
    data_1 = create_random_non_normal_data(sample_size=100000)
    data_2 = create_random_non_normal_data(sample_size=100000)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(data_2, data_1)

    print
    print '---------- Two unequal non-normal means -------------'
    data_1 = create_random_non_normal_data(sample_size=100000, a=11.3)
    data_2 = create_random_non_normal_data(sample_size=100000, a=12)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(data_2, data_1)
def main():
    """ ConfidenceIntervals.py """

    results = flip_some_coins_lots_of_times(number_of_times=100000,
                                            number_of_flips=1000,
                                            fairness=0.5)
    print 'Three-sigma:', get_confidence_intervals_using_the_three_sigma_rule(results)
    print 'Normal dist.:', get_confidence_intervals_using_the_normal_distribution(results)
    print 'Quantiles:', get_confidence_intervals_using_the_quantiles(results)
def main():
    """ TestingHypothesisMath.py """

    results = flip_some_coins_lots_of_times(number_of_times=100000,
                                        number_of_flips=1000,
                                        fairness=0.5)
    print 'Testing a single mean:', example_test_a_mean(
                                        results,
                                        target=500,
                                        significance_level=0.95)

    results_1 = flip_some_coins_lots_of_times(number_of_times=100000,
                                        number_of_flips=1000,
                                        fairness=0.5)
    results_2 = flip_some_coins_lots_of_times(number_of_times=100000,
                                        number_of_flips=1000,
                                        fairness=0.5)
    print 'Comparing two equal means:', example_compare_two_means(
                                        results_1,
                                        results_2)

    results_2 = flip_some_coins_lots_of_times(number_of_times=100000,
                                        number_of_flips=1000,
                                        fairness=0.3)
    print 'Comparing two unequal means:', example_compare_two_means(
                                        results_1,
                                        results_2)

    print 'Testing a single proportion:', example_test_a_proportion(p=0.1,
                                                                    n=100,
                                                                    target=0.1)

    print 'Comparing two equal proportions:', example_compare_two_proportions(p1=0.1,
                                                                              n1=1000,
                                                                              p2=0.1,
                                                                              n2=1000)

    print 'Comparing two unequal proportions:', example_compare_two_proportions(p1=0.1,
                                                                                n1=1000,
                                                                                p2=0.15,
                                                                                n2=1000)
Пример #5
0
def main():
    """ NonParametricMethods.py """

    print '---------- Normal data ---------------'
    normal_data = flip_some_coins_lots_of_times(10000,
                                                number_of_flips=1000,
                                                fairness=0.5,
                                                plot=True)
    normal_lower_bound, normal_upper_bound = get_confidence_intervals_using_the_normal_distribution(
        normal_data)
    print 'normal: len', len(normal_data), 'mean', mean(normal_data)
    print 'Normality test for normal data:', test_for_normality(normal_data)
    print 'Confidence intervals for normal data:', normal_lower_bound, normal_upper_bound
    normal_lower_bound, normal_upper_bound = bootstrap_confidence_intervals(
        normal_data)
    print 'Bootstrapping confidence intervals for normal data:', normal_lower_bound, normal_upper_bound
    print

    print '---------- Powerlaw data -------------'
    powerlaw_data = create_random_non_normal_data(sample_size=10000, plot=True)
    print 'powerlaw: len', len(powerlaw_data), 'mean', mean(powerlaw_data)
    powerlaw_lower_bound, powerlaw_upper_bound = get_confidence_intervals_using_the_normal_distribution(
        powerlaw_data)
    print 'Normality test for powerlaw data:', test_for_normality(
        powerlaw_data)
    print 'Confidence intervals for powerlaw data:', powerlaw_lower_bound, powerlaw_upper_bound
    powerlaw_lower_bound, powerlaw_upper_bound = bootstrap_confidence_intervals(
        powerlaw_data)
    print 'Bootstrapping confidence intervals for powerlaw data:', powerlaw_lower_bound, powerlaw_upper_bound
    print

    print '---------- Two equal normal means -----------------'
    data_1 = flip_some_coins_lots_of_times(10000,
                                           number_of_flips=1000,
                                           fairness=0.5)
    data_2 = flip_some_coins_lots_of_times(10000,
                                           number_of_flips=1000,
                                           fairness=0.5)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(
        data_2, data_1)
    print
    print '---------- Two unequal normal means ---------------'
    data_1 = flip_some_coins_lots_of_times(10000,
                                           number_of_flips=1000,
                                           fairness=0.5)
    data_2 = flip_some_coins_lots_of_times(10000,
                                           number_of_flips=1000,
                                           fairness=0.45)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(
        data_2, data_1)
    print
    print '---------- Two equal non-normal means -------------'
    data_1 = create_random_non_normal_data(sample_size=100000)
    data_2 = create_random_non_normal_data(sample_size=100000)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(
        data_2, data_1)

    print
    print '---------- Two unequal non-normal means -------------'
    data_1 = create_random_non_normal_data(sample_size=100000, a=11.3)
    data_2 = create_random_non_normal_data(sample_size=100000, a=12)
    print 'Normality based test:', compare_two_means(data_2, data_1)
    print 'Ranksum test        :', non_parametric_test_for_difference_of_means(
        data_2, data_1)