def test_cost_function_03(self):
     x = self.training_data[:, :-1]
     y = self.training_data[:, -1]
     x_data_nr = x.shape[0]
     x_data_nc = 6
     x_vector = np.zeros((x_data_nr, x_data_nc))
     x_vector[:, 0] = 1
     x_vector[:, 1] = x[:, 0]
     x_vector[:, 2] = x[:, 1]
     x_vector[:, 3] = x[:, 0]**2
     x_vector[:, 4] = x[:, 1]**2
     x_vector[:, 5] = x[:, 0] * x[:, 1]
     theta = np.array([[2], [2], [2], [1], [1], [0]])
     expected_value = 0
     output_1 = RadialBasisFunctions.cost_function(theta, x_vector, y)
     self.assertEqual(output_1, expected_value)
 def test_cost_function_02(self):
     x = self.training_data[:, :-1]
     y = self.training_data[:, -1]
     x_data_nr = x.shape[0]
     x_data_nc = 6
     x_vector = np.zeros((x_data_nr, x_data_nc))
     x_vector[:, 0] = 1
     x_vector[:, 1] = x[:, 0]
     x_vector[:, 2] = x[:, 1]
     x_vector[:, 3] = x[:, 0]**2
     x_vector[:, 4] = x[:, 1]**2
     x_vector[:, 5] = x[:, 0] * x[:, 1]
     theta = np.array([[4.5], [3], [3], [1], [1], [0]])
     expected_value = 90.625  # Calculated externally as sum(dy^2) / 2m
     output_1 = RadialBasisFunctions.cost_function(theta, x_vector, y)
     self.assertEqual(output_1, expected_value)