コード例 #1
0
 def test_is_none(self):
     self.assertEqual(chi_square_p_value(((1, 1), (1, -1))), (None, None),
                      "Negative numbers should not be allowed")
     self.assertEqual(chi_square_p_value(((0, 0), (0, 0))), (None, None),
                      "Zero sample size should not be allowed")
     self.assertIsNone(chi_square_p_value(((1, ), (1, 2))),
                       "Unequal matrices should not be allowed")
     self.assertIsNone(chi_square_p_value(((1, 2, 3), (1, 2, 3), (1, 2))),
                       "Unequal matrices should not be allowed")
     self.assertIsNone(
         chi_square_p_value(((100, 10), (200, 20), (300, 30), (400, 40))),
         "Matrices have to be square")
コード例 #2
0
def chi_squared_confidence(a_count, a_conversion, b_count, b_conversion):
    contingency_table = [[a_count - a_conversion, a_conversion],
                         [b_count - b_conversion, b_conversion]]

    chi_square, p_value = chi_square_p_value(contingency_table)
    if p_value is not None:
        return (1 - p_value) * 100
    else:
        return None
コード例 #3
0
def chi_squared_confidence(a_count, a_conversion, b_count, b_conversion):
    contingency_table = [[a_count - a_conversion, a_conversion],
                         [b_count - b_conversion, b_conversion]]

    chi_square, p_value = chi_square_p_value(contingency_table)
    if p_value is not None:
        return (1 - p_value) * 100
    else:
        return None
コード例 #4
0
    def test_stress(self):
        # Generate a large matrix
        matrix = []
        for col in xrange(0, 100):
            matrix.append([])
            for row in xrange(0, 100):
                matrix[col].append(random.randint(0, 10))

        self.assertIsNotNone(chi_square_p_value(matrix))
コード例 #5
0
    def test_stress(self):
        # Generate a large matrix
        matrix = []
        for col in xrange(0, 100):
            matrix.append([])
            for row in xrange(0, 100):
                matrix[col].append(random.randint(0, 10))

        self.assertIsNotNone(chi_square_p_value(matrix))
コード例 #6
0
 def assertChiSquareCorrect(self,
                            matrix,
                            observed_test_statistic,
                            p_value,
                            accuracy=7):
     observed_test_statistic_result, p_value_result = chi_square_p_value(
         matrix)
     self.assertAlmostEqual(observed_test_statistic_result,
                            observed_test_statistic, accuracy,
                            'Wrong observed result')
     self.assertAlmostEqual(p_value_result, p_value, accuracy,
                            'Wrong P Value')
コード例 #7
0
 def test_error(self):
     self.assertRaises(TypeError, chi_square_p_value((1, )))
     self.assertRaises(TypeError, chi_square_p_value(((1, 2, 3))))
コード例 #8
0
 def assertChiSquareCorrect(self, matrix, observed_test_statistic, p_value, accuracy=7):
     observed_test_statistic_result, p_value_result = chi_square_p_value(matrix)
     self.assertAlmostEqual(observed_test_statistic_result, observed_test_statistic, accuracy, 'Wrong observed result')
     self.assertAlmostEqual(p_value_result, p_value, accuracy, 'Wrong P Value')
コード例 #9
0
 def test_is_none(self):
     self.assertEqual(chi_square_p_value(((1, 1), (1, -1))), (None, None), "Negative numbers should not be allowed")
     self.assertEqual(chi_square_p_value(((0, 0), (0, 0))), (None, None), "Zero sample size should not be allowed")
     self.assertIsNone(chi_square_p_value(((1,), (1, 2))), "Unequal matrices should not be allowed")
     self.assertIsNone(chi_square_p_value(((1, 2, 3), (1, 2, 3), (1, 2))), "Unequal matrices should not be allowed")
     self.assertIsNone(chi_square_p_value(((100, 10), (200, 20), (300, 30), (400, 40))), "Matrices have to be square")
コード例 #10
0
 def test_error(self):
     self.assertRaises(TypeError, chi_square_p_value((1,)))
     self.assertRaises(TypeError, chi_square_p_value(((1,2,3))))