TypeError: аргумент join () должен быть str или байтами, а не TextIOWrapper - PullRequest
0 голосов
/ 30 мая 2020

У меня есть функции и целевая переменная, которые я хочу сгенерировать в дереве решений. Однако код выдает ошибку. Поскольку 'out file' не генерировал ошибку, я решил, что ошибки не будет и для 'Source.from_file', но она есть.

import os
from graphviz import Source
from sklearn.tree import export_graphviz
f = open("C:/Users/julia/Desktop/iris_tree.dot", 'w')
export_graphviz(
        tree_clf,
        out_file=f,
        feature_names=sample2[0:2],
        class_names=sample2[5],
        rounded=True,
        filled=True
    )
Source.from_file(f)

1 Ответ

0 голосов
/ 30 мая 2020

Как отмечено в docs , from_file принимает строковый путь, а не объект файла:

filename - Имя файла для загрузки / сохранения источника.

Просто пройдите путь в:

import os
from graphviz import Source
from sklearn.tree import export_graphviz
path = "C:/Users/julia/Desktop/iris_tree.dot"
f = open(path, 'w')
export_graphviz(
        tree_clf,
        out_file=f,
        feature_names=sample2[0:2],
        class_names=sample2[5],
        rounded=True,
        filled=True
    )
Source.from_file(path)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...