2013-12-05 3 views
0

У меня здесь небольшая проблема с использованием команды оболочки в R. У меня есть JAR-файл JAR, который принимает в качестве входного файла файл с символьным символом (1 твит в строке). Я вызываю это из функции оболочки:Пропустить имя объекта R в качестве аргумента в оболочке

shell ("java -Xmx500m -jar C: /Users/User/Documents/R/java/ark-tweet-nlp-0.3.2/ark-tweet-nlp -0.3.2.jar - текст в формате ввода C: /Users/User/Documents/R/java/ark-tweet-nlp-0.3.2/examples/test.txt ", intern = T)

Вместо того, чтобы тянуть вектор символов из текстового файла, внешнего по отношению к среде R, я хочу иметь возможность передать вектор, который я предварительно обработал внутри R. Например, если файл «text.txt» импортируется в R в качестве символа вектор, который называется test, я думал, что смогу сделать это:

shell (paste ("java -Xmx500m -jar C: /Users/User/Documents/R/java/ark-tweet-nlp-0.3.2/ark- tweet-nlp-0.3.2.jar - input-forma t text ", test, sep =" "), intern = T)

Но файл jar, который вызывается, должен действительно читать имя файла, а не содержимое файла. Мое обходное решение заключается в том, чтобы записать предварительно обработанный файл на мой диск, а затем повторно импортировать с помощью сценария оболочки, но это неудобно и испортит последующую обработку, которую я планирую делать.

+0

Извините, DWin, я отредактировал свой ответ, чтобы сделать его более ясным. –

ответ

0

Используйте системную команду для создания переменной окружения, а затем прочитайте ее из java. Общим местом будет таблица переменных среды.

+0

Жаль, что я не был чист. В моем примере тест - это имя вектора, поэтому, например, это может быть: test <-c ("this", "is", "my", "vector") –

+0

Это не решение - если вы просто запускаете раздел пасты вашего скрипта, вы получите «тест java-Xmx500m ...». Мне нужно «java-Xmx500m ... y». Мне нужно передать именованный объект в java-скрипт. Java Я не думаю, что это действительно проблема. Я думаю, что реальный вопрос заключается в том, как вы передаете именованный объект R в приглашение shell/cmd. Этот поток (https://stat.ethz.ch/pipermail/r-help/2006-September/113680.html) говорит, что между пространством имен объекта R и пространством имен объектов Windows нет перекрытия , хотя это не совсем в той же ситуации. Возможно, мне приходится иметь дело с внешними файлами. –

Смежные вопросы