后来发现 RMarkdown (本质还是Markdown)十分的有趣,即可以写公式也可以写 R 代码,可以直接运行 R 语言,可以插入图片,直接编辑表格,并且把代码和输出结果导出到 word 、HTML 和 PDF 等。R Markdown 支持数十种...
最主要的原因是我本科就是学统计的,然后大三开始接触 Rstudio,自己也看了一些这方面的书。后来发现 RMarkdown (本质还是Markdown)十分的有趣,即可以写公式也可以写 R 代码,可以直接运行 R 语言,可以插入图片,直接编辑表格,并且把代码和输出结果导出到 word 、HTML 和 PDF 等。R Markdown 支持数十种静态和动态输出格式,包括 HTML、PDF、MS Word、Beamer、HTML5 幻灯片、Tufte 风格的讲义、书籍、仪表板、Shiny、科学文章和网站等。关于 RMarkdown 的详细介绍请查看:<a href="https://rmarkdown.rstudio.com/">https://rmarkdown.rstudio.com/</a>。这里我们只用来打公式也是可以的。
RStudio 是 R 的集成开发环境 (IDE),它包括一个控制台、支持直接执行代码的语法高亮编辑器,以及用于绘图、历史、调试和工作空间管理的工具。RStudio 有开源版和商业版,可在桌面上(Windows、Mac 和 Linux)或连接到 RStudio Server 或 RStudio Server Pro(Debian/Ubuntu、Red Hat/CentOS 和 SUSE Linux)的浏览器中运行。
关于 Rstudio 的详细介绍可以查看 <a href="https://www.rstudio.com/about/">https://www.rstudio.com/about/</a>,下载请点击 <a href="https://www.rstudio.com/products/rstudio/download/#download">https://www.rstudio.com/products/rstudio/download/#download</a> 支持 Windows 、Macos 和 Linux 主流版本。下载完之后,安装比较简单顺着点下一步就可以,如果安装有问题可以百度 Rstudio 安装教程。
新版本的 Rstudio 已经默认安装了这两个包,检验自己的 Rstudio 是否已经安装了这两个包的方法十分简单,可以直接点击 File–New File–Rmarkdown,如果可以成功创建就说明已经有 rmarkdown 这个包了。
点击上方的 Knit 等待几秒钟,如果成功导出 word 那么就不需要安装 knitr 包了。
具体创建和导出步骤见下一段:
点击左上角的 File–New File–Rmarkdown
在弹出的对话框选择 word(十分建议选择 word,中文 PDF 十分繁琐,如果只使用纯英文可以选择 PDF,HTML 如果有网站需求可以选择),Title 和 Author 都可以不写,建议写个标题。选择完成之后点击 OK 就可以创建一个 RMarkdown 文件了。 点击左上角的保存,选择自己想要保存的位置,给文件命名,如果中间弹出选择保存编码格式,请选择 UTF-8 否则中文会乱码。
下面的图是创建的 RMarkdown 默认包括的内容,本着实用的角度我们不过多介绍这些内容的详细信息。红色箭头所指的是我们现在正在编辑的文档,黄色的箭头是 R 代码块,绿色的箭头指向的是标题(一个#是一级标题,两个#就是二级标题以此类推),蓝色箭头所指的是正文。最上面的六行是文件中的 2、3 和 4 行都是一些文档的信息可以删除,第5行最好不要删除。第 8 行到第 10 行是检查 knitr 包初始化检测,如果在文章中不需要使用 R 语言的代码块,这个也可以删掉。下面的内容就是个例子,直接删除就可以。
在创建完成 RMarkdown之后,就可以编写了。插入公式和 LaTeX 几乎没有区别,两个美元符号 $$ 中间就是编写行内公式(公式和句子在同一行),四个美元符号 $$$$ 中间就是行间公式(公式单独一行)。
简单的例子:$\hat y = \hat \beta_0 + \hat \beta_1 X_1 + \hat \beta_2 X_2$
上面的行内公式输出效果: y ^ = β ^ 0 + β ^ 1 X 1 + β ^ 2 X 2 \hat y = \hat \beta_0 + \hat \beta_1 X_1 + \hat \beta_2 X_2 y^=β^0+β^1X1+β^2X2 这就是回归方程的公式。
一个复杂点的例子:
$$ \begin{equation}\begin{split} c_B(t,s)=& E[B_tB_s]-E[B_t]E[B_s]\ =& E[[(B_t-B_s)+B_s]B_s]\ =& E[(B_t-B_s)B_s]+EB_s^2\ =& E(B_t-B_s)EB_s+s\ =& 0+s=s,\ 0\leq s<t \end{split}\end{equation} $$
这个行间公式的输出效果见下面的截图。这是求布朗运动协方差的一种方法的步骤。
$$\mathbb {F} \mathcal {F}$$
上面的是两种常用的花体写法,效果: F F \mathbb {F} \mathcal {F} FF
还有很多公式方面的内容,可以直接查看 LaTeX 官方文档 <a href="https://www.latex-project.org/help/documentation/">https://www.latex-project.org/help/documentation/</a>,或者百度关键字查找,LaTeX 中希腊字母、上标和下标、括号、求和与积分、分式与根式、多行表达式、特殊函数与符号等等。 目前我也没有很深入的研究,知道这些就可以开始编写公式了。
导出文档可以使用代码导出:
knitr::knit("dome.Rmd","C:/Users/Desktop/dome.dock")
这样就可以将 word 文档导出到桌面上了。 也可以直接点击 Knit 导出,我们这里想要尽快的使用 Rmarkdown 因此选择直接点解 Knit(这样比较简单,不需要学习 R 代码)。如果前面选择了 word 就可以直接点击红色箭头所指的 Knit 导出 word,如果想要导出其他的类型可以点击黄色箭头所指的小三角,这样就可以选择的想要导出的文档类型,包括 word 、PDF 和 HTML 等等。可以看到打完公式之后下面就直接出现公式的效果,如果打完公式下面没有出现这种效果,说明公式存在问题,需要仔细检查问题。
可以看到导出的 word 是这样的,这些公式都是可以直接复制到 PPT 等地方的,有了 word 就很容易得到 PDF了,而且中文的 PDF 导出并不简单(全英文的直接点击 knit 就可以,中文的需要安装一个新的包),这里建议导出 word。
有了这些就可以使用 RMarkdown 编辑公式了,下面的内容可以不看了,但是如果想要插入图片等等操作,请继续往下看。
RMarkdown 之所以可以使用 LaTeX 的方式写公式,本质上是因为使用了支持 LaTeX 语法的包。下面这个截图通过选择工具栏 Tools–Global Options–Sweave 可以看到蓝色小箭头所指的部分有两个选项,都是 …LaTeX (这里建议选择 xeLaTeX)这说明很可能 LaTeX 已经变成这个软件的一个包了,其中 xeLaTeX 就是 谢益辉把 LaTeX做了一点修改,将其变成了 R 的一个包 (package).
下面的图中是插入图片方法,第一个包括三部分,首先有一个英文的 !;然后是一个英文的[],方括号中可以写文字,这个文字可以是图片的名称导出 word 之后这个名称会在图片的下方显示;第三部分是图片的路径加名称,这里我只写了图片的名称是因为我的图片和这个 rmarkdown 文件在一个文件夹下。在这里 这样写可以和 的效果相同。
插入网址的方式和插入图片相似,插入网址有两种方式。CTeX这样就可以插入一个网址了,方括号可是网址的名字,但是如果方括号里面有字,那么导出之后就不会打印网址,但是网址会以超链接的形式存在。使用 https://rmarkdown.rstudio.com/lesson-3.html 也可以插入网址,这样网址会直接打印出来。
这部分对于不使用 R 语言的不需要了解, 点击右上角的 Insert 点击 R 就可以插入一个 R 代码块了,可以在代码块中间插入代码,对 R 语言感兴趣的可以探索一下。
在导出 PDF 时可以保存 tex 文档,这里红色箭头所指的地方,可以填多个,这样就是即导出 word 又导出 PDF,在 pdf_document: 下面添加 keep_tex: yes,就可以在导出 PDF 时保留 tex 文档。
关于中文 PDF 有推荐看谢益辉的解决方案:<a href="https://yihui.org/tinytex/cn/">https://yihui.org/tinytex/cn/</a>.
下载 rticles 包,就可以使用其他的模板了。
使用步骤 File–New File–Rmarkdown–From Template 可以选择模板包括 IEEE 等多种模板。
在论文排版方面是不如 LaTeX 的,字体以及大小缩进可以百度查到,我还没有验证这里就不写了。建议导出 word 之后在 word 中调格式,但是修改完 word 之后记得另存重命名,不然下次 knit 之后又会覆盖掉。该简单版教程仅代表个人使用过程中的一点经验和看法,可能存在一些错误,希望各位可以指出。
另外如果转载请注明出处。
本站为非盈利网站,如果您喜欢这篇文章,欢迎支持我们继续运营!
本站主要用于日常笔记的记录和生活日志。本站不保证所有内容信息可靠!(大多数文章属于搬运!)如有版权问题,请联系我立即删除:“abcdsjx@126.com”。
QQ: 1164453243
邮箱: abcdsjx@126.com