Как уже упоминалось в комментариях, код R в документе R Markdown выполняется, когда он связан, а не при просмотре. Говоря об интерактивности для R, обычно думают о Shiny . В некоторых случаях также возможно комбинировать Shiny напрямую с R Markdown, c .f. https://bookdown.org/yihui/rmarkdown/shiny-documents.html. Прямое преобразование вашего скрипта дает:
---
runtime: shiny
output: html_document
---
# Can you guess the daily dose per 1000 inhabititants in the UK?
```{r setup, include=FALSE}
num <- 18.7
```
```{r guessing-game, echo=FALSE}
numericInput("guess", label = "Enter number:", value = 0)
renderText({
if (input$guess == num)
paste(num, "is correct")
else if (input$guess<num)
"it is bigger"
else if (input$guess>num)
"It is smaller"
})
```
Такой документ может быть запущен локально или развернуто . Кстати, ==
не лучший выбор для сравнения чисел с плавающей запятой. Лучше использовать isTRUE(all.equal())
:
> 0.3 == 0.1 + 0.1 + 0.1
[1] FALSE
> isTRUE(all.equal(0.3, 0.1 + 0.1 + 0.1))
[1] TRUE