Code Duplication    Length = 19-19 lines in 2 locations

examples/CASAS_single/casas_decision_tree.py 1 location

@@ 15-33 (lines=19) @@
12
logger = logging.getLogger(__file__)
13
14
15
def training_and_test(token, train_data, test_data, num_classes, result):
16
    """Train and test
17
18
    Args:
19
        token (:obj:`str`): token representing this run
20
        train_data (:obj:`tuple` of :obj:`numpy.array`): Tuple of training feature and label
21
        test_data (:obj:`tuple` of :obj:`numpy.array`): Tuple of testing feature and label
22
        num_classes (:obj:`int`): Number of classes
23
        result (:obj:`pyActLearn.performance.record.LearningResult`): LearningResult object to hold learning result
24
    """
25
    decision_tree = DecisionTree(train_data[0].shape[1], num_classes, log_level=logging.WARNING)
26
    decision_tree.build(train_data[0], train_data[1].flatten())
27
    # Test
28
    predicted_y = decision_tree.classify(test_data[0])
29
    # Evaluate the Test and Store Result
30
    confusion_matrix = get_confusion_matrix(num_classes=num_classes,
31
                                            label=test_data[1].flatten(), predicted=predicted_y)
32
    result.add_record(decision_tree.export_to_dict(), key=token, confusion_matrix=confusion_matrix)
33
    return predicted_y
34
35
36
def load_and_test(token, test_data, num_classes, result):

examples/CASAS_single/casas_svm.py 1 location

@@ 15-33 (lines=19) @@
12
logger = logging.getLogger(__file__)
13
14
15
def training_and_test(token, train_data, test_data, num_classes, result):
16
    """Train and test
17
18
    Args:
19
        token (:obj:`str`): token representing this run
20
        train_data (:obj:`tuple` of :obj:`numpy.array`): Tuple of training feature and label
21
        test_data (:obj:`tuple` of :obj:`numpy.array`): Tuple of testing feature and label
22
        num_classes (:obj:`int`): Number of classes
23
        result (:obj:`pyActLearn.performance.record.LearningResult`): LearningResult object to hold learning result
24
    """
25
    svm_model = sklearn.svm.SVC(kernel='rbf')
26
    svm_model.fit(train_data[0], train_data[1].flatten())
27
    # Test
28
    predicted_y = svm_model.predict(test_data[0])
29
    # Evaluate the Test and Store Result
30
    confusion_matrix = get_confusion_matrix(num_classes=num_classes,
31
                                            label=test_data[1].flatten(), predicted=predicted_y)
32
    result.add_record(svm_model, key=token, confusion_matrix=confusion_matrix)
33
    return predicted_y
34
35
36
def load_and_test(token, test_data, num_classes, result):