Ошибка data.table при использовании через knitr, gWidgetsWWW

Я экспериментировал с gWidgetsWWW и обнаружил странную ошибку. Я создал кнопку с обработчиком для knit2html отчета, в котором использовался оператор присваивания data.table ": =". Отчет вернулся с этой ошибкой:

Ошибка:: = определена для использования только в j и (в настоящее время) только один раз; то есть DT [i, col: = 1L] и DT [, newcol: = sum (colB), by = colA] в порядке, но не DT [i, col]: = 1L, а не DT [i] $ col: = 1L, а не DT [, {newcol1: = 1L; newcol2: = 2L}]. Пожалуйста, смотрите помощь (": ="). Проверьте, is.data.table (DT) ИСТИНА.

Отчет генерируется, как и ожидалось, с использованием knit2html напрямую, а также с помощью кнопки «Knit HTML» в RStudio, поэтому я не уверен, почему он не работает, когда обработчик вызывает knit2html.

Вот окно gWidgetsWWW "test_gui.R":

library(gWidgetsWWW)
library(knitr)

w<-gwindow("Test Window")
g<-ggroup(horizontal=F,cont=w)
b<-gbutton("Report Button",cont=g,handler=function(h,...){
    knit2html("test_report.Rmd")
    localServerOpen("test_report.html")
})

visible(w)<-T

Вот пример R Markdown Doc, который выдает ошибку:

Test Report
===========

```{r test_chunk}
library(data.table)

df<-data.frame(State=rownames(USArrests),USArrests)

data.table(df)[,State:=tolower(State)]

```

Не знаю почему, но когда я вызываю localServerOpen ("test_gui.R") и нажимаю кнопку, я получаю сообщение об ошибке ...

Есть идеи?

Ответы на вопрос(2)

Ваш ответ на вопрос