Несоответствия R-скриптов между RStudio и TibcoSpotfire - PullRequest
0 голосов
/ 16 февраля 2019

При создании функций данных для Tibco SpotFire - build version 7.8.1.0.9 - я использую RStudio - R version 3.5.2 (2018-12-20) - для написания и отладки функций, а затем копирую свой код в SpotFire, когда я закончу.

В нескольких случаях я заметил несоответствия между тем, как код R выполняется между RStudio и SpotFire.Когда бы они ни возникали, результаты, полученные с помощью RStudio, соответствуют онлайновой документации R, а результаты, полученные с помощью SpotFire, - нет.

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

# converts date strings "yyyy-MM-dd" to week number strings "yyyyww",
# where ww is the week number in the year (ISO 8601 convention.)
# dates is a vector (R) or column in a data table (SpotFire)
# containing strings, formatted as "yyyy-MM-dd". In SpotFire,
# the data type for the column is String, not Date.
Week <- strftime(dates, format="%Y%V")

Ссылка на документацию для R 'strftime функция здесь .RStudio возвращает значения наподобие "201901", что и указано в документации для используемого аргумента format.SpotFire возвращает значения, подобные "2019" - информация о номере недели вообще отсутствует, в отличие от документации.Если я заменим format="%Y%V" на format="%Y%W", RStudio вернет значения, подобные "201900", что опять-таки соответствует документации.Насколько я могу судить, SpotFire возвращает значения, которые он должен использовать с format="%Y%V" - так что я думаю, что внутренне это меняет входные данные некоторым образом.

Мой основной вопрос: как мне обойтитакого рода вещи, и как я могу узнать, когда / как SpotFire будет каким-то странным образом связываться с моими функциями и их переменными?Например, есть ли какая-то специальная версия R, которую использует Tibco, которая не является документированной R, или есть документация, которую Tibco предоставляет для внутренней обработки R кода?

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 16 февраля 2019

Краткий ответ - да.Spotfire изначально использует TERR, специальную версию R, которую использует TIBCO.Эта ссылка дает основные отличия, но она не является исчерпывающей: R / 4.4.0 / doc / html / Differences_Between_TERR_and_R / sizes.html

Это два отдельных языковых движка.Если вы воспользуетесь Google TIBCO TERR, вы найдете много информации.Точную версию TERR, которую вы используете, вы найдете в своем Spotfire, выбрав Инструменты> Инструменты TERR.

Вы можете использовать RStudio и указать, где TERR установлен на вашем компьютере, так же, как вы указываете его.к вашей установке R.Таким образом, вы можете проверить, что ваш код делает то, что вы ожидаете.В этом случае выглядит, что% V не поддерживается, но% W есть.Вы также можете использовать R с открытым исходным кодом в Spotfire, но тогда вам нужен сервер статистики.

Gaia

...