Как сопоставить и вывести элементы из результата метода .predict (x) с элементами из другого массива? - PullRequest
1 голос
/ 24 января 2020

У меня есть следующий код:

# Load model
with open('text_classifier.pkl', 'rb') as f:
    countVec, model = pickle.load(f)

#Convert to bag of words
results = countVec.transform(commentsInput)

# predict converted text with the trained model
predictionsNew = model.predict(results)

print(predictionsNew)

Вывод из print(predictionsNew) выглядит следующим образом: [[1 0 1 0 1 0]]

Когда я делаю type(predictionsNew), он возвращает тип вывода as numpy.ndarray

Каждое значение в этом массиве соответствует метке из моего набора данных и сообщает мне, соответствует ли ввод этой метке. Например, предположим, что каждое значение соответствует этому массиву labels = ['a','b','c','d','e','f'].

Я хотел бы провести l oop через первый массив и второй массив и выдать следующий вывод:

a = 1
b = 0
c = 1
d = 0
e = 1
f = 0

Какой самый простой способ добиться этого?

ОБНОВЛЕНИЕ: Я считаю, что массив чисел содержит только один элемент. Поэтому я бы хотел разделить этот элемент на 6 различных элементов, которые соответствуют моему массиву меток.

1 Ответ

1 голос
/ 24 января 2020

Вы ищете функцию zip.

a = ["a", "b", "c", "d", "e"]
b = np.ndarray((5,), buffer=np.array([0, 1, 0, 1, 0]), dtype=int) 

for x, y in zip(a, b):
    print(f"{x} = {y}")

Выходы:

a = 0
b = 1
c = 0
d = 1
e = 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...