r - 在 R 中打印格式化的数学运算
问题描述
我在 R 中有这样的数学运算:
x = 5
y = (x / 5) * 2
我想打印y
到控制台或 pdf 文件,所以它看起来像:
(x / 5) * 2 喜欢在纸上
我可以使用 R 基本函数或某种库来做到这一点吗?
解决方案
@Yehor:您可以使用 RStudio 和 RMarkdown 的强大功能将文本、代码和可视化组合成 pdf 等输出格式。在引擎盖下,您需要的不仅仅是“某种图书馆”。但是,如果您使用 RStudio 作为您的 R 编辑器,那么基础架构(您需要的)实际上已经到位。第一次打开 RMarkdown 文件时,RStudio 会要求安装一些软件包,但不要担心。
在 RStudio 中打开一个新的 RMarkdown 文件。在开始对话期间,您可以(预)选择一种输出类型,例如 pdf。请注意,您可以稍后更改。
打开的示例让您了解可以做什么。当您点击编辑器窗格顶部栏中的“编织按钮”时,魔法就会发生。R/RStudio 将呈现文档并解释代码块。这些块可以包括“仅”代码、生成表格和/或图形的代码。
对于数学和公式,RMarkdown 支持 2 种 LATEX 呈现方式:
- 内联方程
- 方程模式
(I) 内联方程 - 在单个美元符号内 $
您可以在 Rmd 文档的文本部分的任何位置包含内联方程。例如:
This is how I add a formula: $y := \frac{x}{5} * 2$ within a line using inline code.
(II) 等式模式 - 双美元符号内的语句 $$
对于等式模式,使用 $$ 并将其放在 Rmd 中的单独行上。
$$y := \frac{x}{5} * 2$$
在 RStudio 中编织 Rmd 会将文档呈现为 pdf(您也可以导出为 html、MS Word 甚至 Powerpoint)。
例如:
用这个最小的 Rmd 生成:
如果您想将此与计算结合起来,您将添加一个“代码块”。在 RMarkdown 中,您可以在 3 个反引号内包含 R 代码,例如{r} # R-stuff ...
,以下代码块执行该操作:
x <- 5
y <- (x/5) * 2
如果要在文本中打印结果“内联”,可以添加所谓的内联代码。这是通过在单个反引号和起始 r 内(即r ...
在 Rmd 的文本部分内)使用 R 语句来完成的。例如:
My result is `r y` as inline code.
这将打印:我的结果是 2 作为内联代码。
您可以通过用分号(~命令行结尾)分隔每个语句来包含更复杂的 R 语句作为内联代码。但是,我建议在代码块中做一些蓬松的东西,并将内联用于简单的语句。它在视觉上和调试上都容易得多。
推荐阅读
- javascript - JS中数组的重新分配和“按引用传递”原则
- ios - “找不到框架 GoogleAppMeasurement” 手动添加框架时出错
- css - 由 javascript 控制的动态 flexbox 布局
- selenium - Selenium WebDriver:动作和触摸动作。如果两者都存在所需的方法,则应何时使用一个或另一个类?
- java - 如果我们重新启动 Spring Boot 应用程序,正在运行的用户线程发生了什么?
- spring - 如何在 Kotlin 中将 JsonDeserializer 添加到 Kafka 消费者?
- chart.js - Chart.js折线图重叠线解决方案
- mongodb - 如何通过多个本地字段比较对 mongoDB 集合进行链式聚合?
- c# - 使用 C# SDK 以编程方式获取 Azure IoT 中心消费者组
- angular - 无法从异步函数中获取值