近日帮助太太分析一组试验数据, 借机仔细研究了一下“文学化编程”理念, 发现 org-babel联合R语言 真的是生成数据报告的“神器”。
1 系统准备
首先当然是要安装EMACS、org-mode、org-babel、R、ESS这些必备的软件包。
2 使用
先建立一个org文档, 再在文档中按照org格式输入章节、文字, 说明这篇报告的用途。 在需要输入数据分析代码的部位输入“<s”,再按TAB键, 就会自动扩展成为“#+BEGIN_SRC …… #+END_SRC"的代码块。
在“#+BEGIN_SRC"语句末尾可加入如下参数, "R :session :results output :exports both"。 各个参数意义如下:
- R 表示这部分代码是R语言,可以用 “ C-c ' " 进入和退出R语言编辑模式。
- :session 表示这部分代码在同一个R语言会话中实现,包括这份报告中所有的代码块都可以在一个会话中实现。
- :results 表示代码的结果用什么格式输出,如果是直接返回运算结果,用output; 如果是返回图形,则用graphics; 如果不想返回结果,则用silent。
- :exports 表示代码在最终生成的报告中导出成什么格式,both表示结果和图形都导出。