Есть ли способ обойти ограничение в 500 символов при принуждении выражений к символам используя как. символ?

В настоящее время я пишу небольшой пакет, который должен соответствовать моделям полиномиального дерева обработки (для не требуется справочная информация на веб-странице и pdf ).

Он делает следующее: он считывает модель (то есть формулы) из файла и преобразует их (с помощью синтаксического анализа ) в выражения. Позже некоторые переменные в этих выражениях заменяются другими переменными из другого файла (т. Е. Применяются ограничения модели). Следовательно, модель снова преобразуется в символы (через as. Проблема: если одно выражение длиннее 500 символов, их обратное преобразование с помощью as.character усекает их до 500 символов (или около того).
? As.character дает:

] as.character обрезает компоненты языковые объекты до 500 знаков (до 1.3.1 было около 70).

Вот пример:

text1 <- paste(rep(LETTERS, 10), collapse = " + ")
nchar(text1)
[1] 1037

expr1 <- parse(text = text1)
text2 <- as.character(expr1)
[1] 504

Вопрос: Можете ли вы обойти это ограничение в 500 символов?

Я знаю, что мы могли бы обойти эту проблему, если бы применили ограничения (т. е. обмен переменными) до того, как мы проанализируем модель в первый раз. Но это потребует большого объема программирования, поскольку все в основном готово, и было бы здорово, если бы мы могли обойти ограничения в 500 символов другим способом.

9
задан Henrik 3 March 2011 в 12:15
поделиться