【问题标题】:RMarkdown - second inline code shows code block instead of valueRMarkdown - 第二个内联代码显示代码块而不是值
【发布时间】:2018-11-20 05:40:03
【问题描述】:

我试图只显示几个变量值,使用 RMarkdown 中的内联代码。 第一个内联代码正确显示值(数字 3),但第二个显示代码块而不是预期值(datos[2] 而不是数字 9)。 两者都使用相同的sintaxis。 输出到 HTML 时会出现错误输出。输出到 Word 工作正常。知道为什么会发生这种行为,我该如何解决? 我正在使用 R 3.3.3、RStudio 1.1.419、MacOS X Yosemite。 代码如下:

---
title: "Untitled"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
datos <- c(3,9,4,7)
```
The first value in datos is `r datos[1]` and the second is `r datos[2]`.

输出是:

Untitled
The first value in datos is 3 and the second is datos[2].

非常感谢您的帮助

【问题讨论】:

  • 到底是什么问题?我刚刚尝试运行您的代码,它工作得很好,产生了所需的输出。 Untitled datos 中的第一个值是 3,第二个是 9。我使用的是 R 4.0.2,Rstudio 1.3.1056

标签: r r-markdown inline-code


【解决方案1】:

在第二个块中添加r 字母。

The first value in datos is `r datos[1]` and the second is `r datos[2]`.

r 在这里作为一个语句告诉 R 运行这段代码,

datos[2]

并在此处返回数字。

【讨论】:

  • 好的,谢谢嘉祥。我注意到了错误并更正了它,一旦更正,这段代码就会正常运行,但我上传的只是作为一个例子。在我的真实代码中,比这长得多,代码是正确编写的,但输出仍然是错误的。谢谢!
  • 实际代码显示了r datos[3,2]r datos[3,1]形式的data.frame值。第一个内联代码块正确显示了值,但第二个显示了代码块。如上所述,此错误仅发生在 HTML 输出中,而不发生在 Word 输出中。
  • @MarceloM 我遇到了类似的问题,这是 html 输出而不是 docx、pdf 输出中的错误。我建议你使用pull()方法来提取你需要的具体数字,这是我目前用来解决这类问题的方法。
猜你喜欢
  • 2017-12-08
  • 2022-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-23
相关资源
最近更新 更多