def test_iita_when_dataset_has_invalid_values(self): dataset = pd.DataFrame({ 'a': [1, 0, 1], 'b': [0, 1, 5], 'c': [0, 1, 1] }) self.assertRaises(SystemExit, lambda: iita(dataset, v=1))
def test_iita_with_invalid_second_argument(self): self.assertRaises(SystemExit, lambda: iita(self.dataframe, -100)) self.assertRaises(SystemExit, lambda: iita(self.dataframe, -1)) self.assertRaises(SystemExit, lambda: iita(self.dataframe, 0)) self.assertRaises(SystemExit, lambda: iita(self.dataframe, 4)) self.assertRaises(SystemExit, lambda: iita(self.dataframe, 100)) self.assertRaises(SystemExit, lambda: iita(self.dataframe, (1, 2))) self.assertRaises(SystemExit, lambda: iita(self.dataframe, [1, 2]))
def test_orig_iita_with_dataframe(self): response = iita(self.dataframe, v=3) self.assertEqual( [0.20370370370370369, 0.39814814814814814, 0.215277777777777776], response['diff'].tolist()) self.assertEqual(0, response['error.rate']) self.assertEqual([(2, 1)], response['implications']) self.assertEqual(0, response['selection.set.index']) self.assertEqual(3, response['v'])
def test_corr_iita_with_matrix(self): response = iita(self.matrix, v=2) self.assertEqual( [0.18518518518518515, 0.16666666666666666, 0.215277777777777776], response['diff'].tolist()) self.assertEqual(0.5, response['error.rate']) self.assertEqual([(0, 1), (0, 2), (2, 0), (2, 1)], response['implications']) self.assertEqual(1, response['selection.set.index']) self.assertEqual(2, response['v'])
def test_mini_iita_with_dataframe(self): response = iita(self.dataframe, v=1) self.assertEqual( [0.18518518518518515, 0.16666666666666666, 0.21296296296296294], response['diff'].tolist()) self.assertEqual(0.5, response['error.rate']) self.assertEqual([(0, 1), (0, 2), (2, 0), (2, 1)], response['implications']) self.assertEqual(1, response['selection.set.index']) self.assertEqual(1, response['v'])
def get(self): data_frame = load_data("pisa.txt") list = [] response = iita(data_frame, v=1) print(response) for a,b in response["implications"]: list.append({"orderNum1" : a, "orderNum2" : b}) return list
def post(self): json_data = request.get_json(force=True) dataframe = pd.DataFrame.from_dict(json_data) data_frame = load_data("pisa.txt") data_frame.columns = dataframe.columns dataframe = dataframe.append(data_frame) list = [] response = iita(dataframe, v=1) print(response) for a,b in response["implications"]: list.append({"orderNum1" : a, "orderNum2" : b}) return list
def calculate_itta(conn, prostor_znanja_id, dict_pitanje_cvor, dict_pitanje_label): #data_frame = pd.DataFrame({'100': [1, 0, 0], '200': [0, 1, 0], '300': [0, 1, 1]}) # uvek vraca isto data_frame = get_matrix_from_java() response = iita(data_frame, v=1) pairs = response['implications'] index = data_frame.columns.values a_list = list(index) #print(a_list[1]) for pair in pairs: print(dict_pitanje_cvor) print((a_list[pair[0]], a_list[pair[1]])) cvor1_id = dict_pitanje_cvor[int(a_list[pair[0]])] cvor2_id = dict_pitanje_cvor[int(a_list[pair[1]])] insert_veza(conn, "gen"+str(cvor1_id)+str(cvor2_id), "gen"+str(cvor1_id)+str(cvor2_id), prostor_znanja_id, cvor1_id, cvor2_id)
def test_iita_with_invalid_first_argument(self): self.assertRaises(SystemExit, lambda: iita(pd.DataFrame({'a': [1, 0, 1]}), v=1)) self.assertRaises(SystemExit, lambda: iita('Invalid dataset', v=1))
async def calculate(dict): data_frame = pd.DataFrame(dict) response = iita(data_frame, v=1) return response