Zwe*_*ler 8 r sweave knitr r-markdown
我试图了解rmarkdown,sweave和knitr。查看代码和示例我遇到了两种类型的代码头,我不明白它们属于什么语言/包。
标题是
```{}
```
Run Code Online (Sandbox Code Playgroud)
和
<<>>=
@
Run Code Online (Sandbox Code Playgroud)
rmarkdown,sweave以及knitr? 有什么?.rnw,我使用的是哪个?r2e*_*ans 13
sweave 和 rmarkdown 都提供了为 R、python 和其他编程语言运行任意代码的能力。每种方法的优缺点各不相同,但可以快速比较:
R降价:
典型的文件扩展名:.rmd(case-insens),也许.rmarkdown
支持 R、python 和其他几种语言
输出为 HTML、docx、LaTeX(以及 PDF)和其他几种输出格式
使用三重反引号进行块划分
Regular text.
```{r chunkname, chunkoptions, ...}
a <- 1
```
```{python pychunk, chunkoptions, ...}
def myfun(v: list) -> list:
"""
Something important in this docstring.
"""
return [a+1 for a in v]
```
More regular text.
Run Code Online (Sandbox Code Playgroud)
因为是基于markdown的,所以在交叉引用、table-control等方面有一定的限制;其中许多都有软件包和已知的缓解技术(太多了,无法在此列出)。但是,您可以在 Markdown 中直接使用 LaTeX 格式,因此输出到 PDF 也可以享受这种控制(尽管 LaTeX 代码不会转换为其他输出格式)。
编织:
典型的文件扩展名包括.rnw(case-insens) 和我见过的.noweb(对此不完全确定......)
支持 R,如果您可以通过 R(例如 via reticulate)访问它们,则可能还支持其他语言
输出到 LaTeX 和 PDF
使用<<>>=和@为大块划分:
Regular text.
<<chunkname, chunkoptions, ...>>=
a <- 1
@
More regular text.
Run Code Online (Sandbox Code Playgroud)
因为它直接基于 LaTeX,所以您可以尽可能多地控制格式、交叉引用等
knitr
sweave和rmarkdown格式的文件Sweave2knitr),参考:https : //yihui.name/knitr/demo/sweave/| 归档时间: |
|
| 查看次数: |
4097 次 |
| 最近记录: |