用rmarkdown定制你的数据分析报告

您所在的位置:网站首页 r语言remarkdown文字居中 用rmarkdown定制你的数据分析报告

用rmarkdown定制你的数据分析报告

2024-06-05 02:34| 来源: 网络整理| 查看: 265

生物信息学习的正确姿势

NGS系列文章包括NGS基础、在线绘图、转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这)、ChIP-seq分析 (ChIP-seq基本分析流程)、单细胞测序分析 (重磅综述:三万字长文读懂单细胞RNA测序分析的最佳实践教程)、DNA甲基化分析、重测序分析、GEO数据挖掘(典型医学设计实验GEO数据分析 (step-by-step))、批次效应处理等内容。

1、rmarkdown简介

markdown是一种轻量级标记语言,它允许使用者可以通过简单的文本格式 编写文档,并且转换成html文档。markdown因为语法简单、上手容易,现在也越来越多的被文档编辑人员使用。有很多可以支持markdown编辑的应用软件,例如Mou、MarkdownEditor、Haroopad、Typora等,通过这些工具可以便捷的完成markdown文字录入,并且支持导出PDF、HTML等格式。 

rmarkdown是R语言环境中提供的markdown编辑工具,运用rmarkdown撰写文章,既可以像一般的markdown编辑器一样编辑文本,也可以在rmarkdown中插入代码块,并将代码运行结果输出在markdown里。对于专注于用R语言写报告的数据分析师来说,rmarkdown既提高了数据分析工作的便捷性,也提高了数据分析报告的复用性。 

2、rmarkdown的输出展示 2.1新建一个markdown项目

点击Rstudio左上角的新建项目,选择Rmarkdown文件格式,即可建立一个rmarkdown编辑文件 。在弹出的选项框里,可以申明rmarkdown的Title、Author以及默认的输出文件格式,一般可以选择HTML、PDF、Word格式,具体见下图。 

markdown的结构

在新建的markdown文件里,主要包含三块内容:1.YAML、2.markdown文本、3.代码块。 

1)YAML

YAML是Rmarkdown的头部文件(上图1位置),YAML定义了rmarkdwon的性质,比如title、author、date、指定output文件类型等。 

2)markdown文本

markdown文本是rmarkdown里的主要内容(上图3位置),由编辑人员按照markdown语法自行编写文本内容, 

3)代码块

rmarkdown的一个主要功能是可以执行文件内的代码块(上图2位置),并将代码执行结果展示在markdown里。这对撰写数据分析报告带来了极大的便利。 

R代码块一般通过```{R}```来插入,另外{}内还可以定义参数来控制代码块运行结果的输出格式。一般包括代码及运行结果的输出、图片表格格式定义等。代码块参数主要包括如下几类: 

evaleval控制了代码块是否执行。若设定为eval=TRUE,则markdown会执行代码块里的代码;若eval=FALSE,则markdown不会执行代码。 

echoecho参数控制了markdown是否显示代码块。若echo=TRUE,则表示代码块显示在markdown文档显示代码块;反之,代码块不出现在输出结果中。 

collapsecollapse设置为TRUE或者FALSE.用来控制文本输出结果是否和代码块混在一起。 

fig.show :设置了图片输出方式 

fig.show=‘asis’:表示plot在产生他们的代码后面

fig.show=‘hold’:所有代码产生的图片都放在一个完整的代码块之后

fig.show=‘animate’:表示将所有生成的图片合成一个动画图片

fig.show=‘hide’:表示产生所有图片,但是并不展示

fig.width:设置图片输出的宽度 

fig.height:设置图片输出的高度 

fig.align设置图片位置排版格式,默认为left,可以为right或者center 

fig.cap :设置图片的标题

fig.subcap:设置图片的副标题 

若markdown内的代码块存在一样的参数设置,则可以提前设计好全局的代码块参数。全局代码块通过knitr::opts_chunk$set函数进行设置,一般设置在YAML文件下方,具体见下图。 

2.2markdown的图表输出

rmarkdown生成的表格,可以通过knitr包的kable()函数进行输出。以datasets包的rock数据集为例,在rmarkdown中输出rock数据集的表格(见下图)。 

knitr::kable(head(rock), caption = 'rock数据',align='c')

除了用knitr::kable()输出表格,还可以kableExtra、huxtable等扩展包来美化表格。本文以kableExtra包为例,大致介绍rmarkdown中渲染表格的相关函数。 

设置表格的宽度

x_html


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3