Почему это печатает меня всегда только в одном случае? - PullRequest
0 голосов
/ 08 ноября 2019

Создайте модель классификации для данного набора данных. Для обучения возьмите только первые 25 образцов классов Bream и Perch (первые 25 от Bream и первые 25 от Perch или 50 в общей сложности). Поэтому необходимо создать двоичный классификатор, при котором каждый класс, кроме Bream и Perch, игнорируется при обучении сета. Делать первые 25 копий в программе, а не вручную! Я новичок в этом, поэтому любая помощь будет хорошей.

Я пробовал какой-то код, но он всегда печатает меня 'Perch'

    if __name__ == "__main__":
    test_case = input().split(', ')

    test_case = [300.0, 34.8, 37.3, 39.8, 15.8, 10.1, 'Pike']
    breams = []
    for row in data:
        if row[-1] == 'Bream':
            breams.append(row)
            if (len(breams))>=25:
                break

    perches = []
    for row in data:
        if row[-1] == 'Perch':
            perches.append(row)
            if (len(perches)) >= 25:
              break  

    training_set = breams + perches
    tree = build_tree(training_set)
    res = classify(test_case, tree)    

    for key in res.keys():
        res = key
    print(res)

Должно быть напечатано 'Perch' или 'Bream'. Зависит, но во всех случаях печатает «Окунь».

...