Не могу получить доступ к массиву, созданному в Python, к - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь составить пакет в R для вызова python из RStudio.Вот учебник .

Когда я выполняю следующее python chunk.Он работает и отображает результаты в rmarkdown:

(сначала установите sumy текстовую библиотеку python для суммирования текста, выполнив в терминале следующую команду: pip install git + git: //github.com/miso-belica / sumy.git)

from __future__ import absolute_import
from __future__ import division, print_function, unicode_literals
from sumy.parsers.html import HtmlParser
from sumy.parsers.plaintext import PlaintextParser
from sumy.nlp.tokenizers import Tokenizer
from sumy.summarizers.lsa import LsaSummarizer as Summarizer
from sumy.nlp.stemmers import Stemmer
from sumy.utils import get_stop_words

LANGUAGE = "czech"
SENTENCES_COUNT = 10

url = "http://www.zsstritezuct.estranky.cz/clanky/predmety/cteni/jak-naucit-dite-spravne-cist.html"
parser = HtmlParser.from_url(url, Tokenizer(LANGUAGE))
# or for plain text files
# parser = PlaintextParser.from_file("document.txt", Tokenizer(LANGUAGE))
stemmer = Stemmer(LANGUAGE)

summarizer = Summarizer(stemmer)
summarizer.stop_words = get_stop_words(LANGUAGE)
sentences = []
for sentence in summarizer(parser.document, SENTENCES_COUNT):
        print(sentence)
        sentences.append(sentence)

Я не могу получить доступ к sentences[] в коде R:

py$sentences

Error in py_get_attr_impl(x, name, silent) : AttributeError: module '__main__' has no attribute 'sentences'

Однако, когда я запускаю весь код Python в python, используяметод repl_python().Я могу получить доступ к py$sentences, который list.

Вопрос в том, есть ли лучший способ сделать это и почему я не могу использовать нормальный вывод для объекта R, используя reticulate::py_to_r(py$sentences), возможно?Я не хочу возвращать list, я хочу преобразовать sentences[] в vector или R dataframe.Я посмотрел здесь , здесь и здесь , но бесполезно.Я обновил пакет reticulate до версии dev, но все еще бесполезен.

...