Как разобрать этот массив из результата ML? - PullRequest
1 голос
/ 21 июня 2020

Как разобрать эту распечатку? Можно представить, что его нужно присвоить переменной.

(array([[1., 1., 1., 1.]]), array([[1605, 1606, 1698, 1607]], dtype=int64))

Например, как разобрать 1605?

И / или как разобрать 1605, 1606, 1698, 1607 из второго массива?

Это результат НЛП, над которым мы работаем впервые, и ваш ответ очень ценен. Спасибо.

Пс. Чтобы прояснить мой вопрос, этот вывод является одним из многих выводов NN NLP, которые нужно анализировать в виртуальной среде, работающей в API приложения. Итак, учитывая этот вывод, как можно проанализировать только второй массив, который является строками, возвращаемыми из df? ie: нельзя вручную разделить массивы. Решение Жерве работает на практике, вводя вручную «np.», Однако это решение не кажется устойчивым в повторяющейся производственной среде, по крайней мере, не с использованием форматирования строк. Любое дальнейшее понимание автоматизации синтаксического анализа без numpy, пока приложение развернуто, также было бы очень полезно. Спасибо.

Ответы [ 2 ]

2 голосов
/ 21 июня 2020

Эти два, скорее всего, представляют собой очень разные вещи, поэтому я бы лично разделил их, выполнив множественное присваивание:

import numpy as np

x = (np.array([[1., 1., 1., 1.]]), 
     np.array([[1605, 1606, 1698, 1607]], dtype=np.int64))

a, b = x

Затем вы можете получить доступ к первому элементу второй части с нормальной индексацией:

b[0][0]
Out[9]: 1605
2 голосов
/ 21 июня 2020
import numpy as np

a = np.array([[1,1,1,1]], int)
b = np.array([[1605, 1606, 1698, 1607]], int)
c=[a,b]
d=np.vstack(c)
print('\n', c)
print('\n', d)
print('\n', d[1,0])
print('\n', d[1,2])

# вывод

 [array([[1, 1, 1, 1]]), array([[1605, 1606, 1698, 1607]])]

 [[   1    1    1    1]
 [1605 1606 1698 1607]]

 1605

 1698
...