在另一个 Rmd 中运行选定的块

2024-06-19

我已经在源 Rmd 文件中运行了分析,并且希望仅使用few来自源的块。我已经看到了一些关于从源 Rmd 中提取所有块的答案来自另一个 Rmd 中的 Rmd 文件的源代码 https://stackoverflow.com/questions/41962434/source-code-from-rmd-file-within-another-rmd and 如何获取像 `source('myfile.r')` 这样的 R Markdown 文件? https://stackoverflow.com/questions/10966109/how-to-source-r-markdown-file-like-sourcemyfile-r。我对这些帖子有同样的担忧,因为我不想移植一个单独的 .R 文件,这似乎是唯一的方法read_chunk works.

我想我现在可以导入源 Rmd,但现在我不确定如何在最终的 Rmd 中调用它的特定块。这是一个可重现的示例:

源代码.Rmd

---
title: "Source Code"
output:
  pdf_document:
    latex_engine: xelatex
---

```{r}
# Load libraries
library(knitr) # Create tables
library(kableExtra) # Table formatting
# Create a dataframe
df <- data.frame(x = 1:10,
                 y = 11:20,
                 z = 21:30)
```

一些解释性文字

```{r table1}
# Potentially big block of stuff I don't want to have to copy/paste
# But I want it in the final document
kable(df, booktabs=TRUE,
      caption="Big long title for whatever") %>%
  kable_styling(latex_options=c("striped","HOLD_position")) %>%
  column_spec(1, width="5cm") %>%
  column_spec(2, width="2cm") %>%
  column_spec(3, width="3cm")
```

[一些其他文本,加上一堆我不需要任何人在干净版本中看到的其他块。]

```{r}
save(df, file="Source.Rdata")
```

最终文件Rmd

---
title: "Final Doc"
output:
  pdf_document:
    latex_engine: xelatex
---

```{r setup, include=FALSE}
# Load libraries and data
library(knitr) # Create tables
library(kableExtra) # Table formatting
opts_chunk$set(echo = FALSE)
load("Source.Rdata")
```

据我所知,这可能是加载的最佳方式SourceCode.Rmd(来自上面第一个链接来源):

```{r}
options(knitr.duplicate.label = 'allow')
source_rmd2 <- function(file, local = FALSE, ...){
  options(knitr.duplicate.label = 'allow')

  tempR <- tempfile(tmpdir = ".", fileext = ".R")
  on.exit(unlink(tempR))
  knitr::purl(file, output=tempR, quiet = TRUE)

  envir <- globalenv()
  source(tempR, local = envir, ...)
}

source_rmd2("SourceCode.Rmd")
```

此时,我不知道如何调用特定块table1 from SourceCode.Rmd。我已按照说明尝试了以下操作here http://zevross.com/blog/2014/07/09/making-use-of-external-r-code-in-knitr-and-r-markdown/没有成功:

```{r table1}
```

```{r}
<<table1>>
```

第一个似乎什么也没做,第二个抛出一个unexpected input in "<<" error.


我写了一个函数source_rmd_chunks()通过标签名称获取块。看gist https://gist.github.com/brshallo/e963b9dca5e4e1ab12ec6348b135362e.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在另一个 Rmd 中运行选定的块 的相关文章

  • 将ggplot中条带标签的位置从顶部更改为底部?

    我知道这不完全是一个数据可视化问题 但老板要求这样做 所以我需要弄清楚是否可以 为 2016 年寻找答案的人提供答案 As of ggplot22 0 切换参数 http docs ggplot2 org current facet gri
  • 使用不同比例的累积分布曲线 (ECDF) 创建 ggplot2 直方图

    使用 ggplot2 我可以使用以下代码创建具有累积分布曲线的直方图 但是 那stat ecdf曲线缩放至左侧 y 轴 library ggplot2 test data lt data frame values replicate 1 s
  • R包导出ICS?

    有谁知道 R 函数可以将日期和标签导出为 ics 日历格式 我已经用谷歌搜索过 但没有什么是显而易见的 但不敢相信有人还没有这样做 iCalendar 规范是非常简单 https www rfc editor org rfc rfc2445
  • 如何在Shiny App中点击tabPanel后跳转到另一个网页

    我有以下内容Shiny http shiny rstudio com app library shiny shinyApp ui lt shinyUI navbarPage X men tabPanel icon icon home lib
  • 如何用R创建时间散点图?

    数据是一系列日期和时间 date time 2010 01 01 09 04 43 2010 01 01 10 53 59 2010 01 01 10 57 18 2010 01 01 10 59 30 2010 01 01 11 00 4
  • 如何在 Windows 操作系统上安装 BigMemory 和 bigrf

    我一直在尝试在我的 R 安装上安装 bigmemory 我的操作系统是 windows 7 64 位 我已经在 R V2 15 1 2 15 2 和 3 0 1 64 位上尝试过 但我无法让它工作 我尝试了几种选择 下载当前源并在 R v3
  • 将函数应用于数据框的所有元素

    我正在尝试对数据框中的所有元素应用一些转换 当使用常规应用函数时 我得到一个矩阵而不是数据帧 有没有办法直接获取数据框而不添加as data frame到每一行 df data frame a LETTERS 1 5 b LETTERS 6
  • 删除数据框值的后缀

    我有一个这样完成的数据框 a b c 1 2011 mal ID9 2 2012 yesterday ID10 3 2010 misch ID10 4 1995 ship ID9 5 2008 se ID9 6 1998 falling I
  • 从总和为所需总数的值列表中确定所有可能的组合

    一位朋友问我一个编程问题 关于如何确定一组值中所有可能的值组合可以相加以获得所需的总数 我有一个解决方案 但它不太优雅 它基本上只是一系列 for 循环和 if 语句 我确信 dplyr 有一个我想不到的解决方案 因为我知道它有多么有用 但
  • 使用 R 以双对数刻度(以 10 为底)绘制分布的密度线

    我知道参数log xy 但我不知道你是否可以控制对数刻度的底数 我的猜测是 10 可能是默认值 而且我在下面的具体问题上并不幸运 我怎样才能重现以下情节 从这个来源 http www uvm edu pdodds teaching cour
  • 具有变化比例的 gganimate(轴限制)

    我想使用创建一个 gifgganimate 但我的轴范围在一帧中变化很大 这导致所有后续帧都被挤压 In ggplot2的方面 有一个选择scales free 有没有办法让每一帧都有自由比例gganimate 这是一个例子 library
  • 将强化的 data.frame 转换回 sf 对象

    五十斯塔特包提供了一张很棒的美国地图 其中有夏威夷和阿拉斯加 如下图所示 对象五十 州已经得到加强 可以与 ggplot2 一起使用 但是 我想使用 geom sf 将其绘制为 sf 对象 作为一个更普遍的问题 将强化的 data fram
  • 零膨胀泊松分布的经验和理论分布图

    以下是我正在研究的一种数据集 data lt c 0 1 0 11 2 0 3 0 0 2 1 3 1 0 1 0 0 0 2 3 0 0 0 8 1 1 1 0 1 1 2 7 0 0 0 5 2 3 6 1 1 5 2 9 0 0 1
  • 您使用 Attach() 或按名称或切片调用变量吗?

    许多介绍 R 的书籍和指南都是从附加一个 R 语言的实践开始的 data frame这样您就可以通过名称调用变量 我一直发现用以下方式调用变量是有利的 符号或方括号切片 2 这样我就可以使用多个data frames 而不混淆它们和 或使用
  • orderBy 随递减排序和递增排序的变化

    是否有一种标准方法可以按几列对 data frame 进行排序 但会发生减少或增加的变化 例如 您可能希望按一个变量 递减 和下一个变量 递增 对 data frame 进行排序 有没有类似的东西 mydf order mydf myvar
  • 在闪亮仪表板中显示/隐藏菜单项

    当进入应用程序时 我需要隐藏一个菜单项 当用户选择某个值时 菜单项必须出现 我努力了shinyjs功能hidden 并且它隐藏了一个 menuItem 但是当使用show or toggle 菜单项不会出现 我发现了Rshinydashbo
  • 在 R/ggplot2 中将字符串转换为函数参数的最佳方法? [复制]

    这个问题在这里已经有答案了 我正在开发一个闪亮的应用程序 用户可以选择可以使用 ggplot2 绘制哪些变量 但是我完全不确定将字符串 即要绘制的变量的名称 转换为合适的函数参数的最佳方法 考虑以下非常人为的 有效的示例 df lt dat
  • 使用 geom_bar 和 stat="identity" 绘制平均值的 hline

    我有一个条形图 其中确切的条形高度位于数据框中 df lt data frame x LETTERS 1 6 y c 1 6 1 6 1 g rep x c a b each 6 ggplot df aes x x y y fill g g
  • 不同的分位数:箱线图与小提琴图

    require ggplot2 require cowplot d iris ggplot2 ggplot d aes factor 0 Sepal Length geom violin fill black alpha 0 2 draw
  • 添加不同的标签以在 ggplot R 中的堆积条形图中显示总计?

    我的问题有点类似 如何添加文本标签以显示ggplot中堆叠比例条的每个条中的总数n https stackoverflow com questions 65201095 how to add text label to show total

随机推荐

  • 如何在 VS Code 中为 CMake 项目设置 C/C++ IntelliSense?

    我正在尝试使用 libTooling 编写一个工具 我对其进行了设置 以便它可以使用 LLVM 文档中的示例进行编译 然而 C C IntelliSense 似乎不适用于 CMake 项目 我的工具位于
  • realloc():重新分配为 char * 上的 strcat 腾出空间时下一个大小无效 [重复]

    这个问题在这里已经有答案了 我在以下代码中收到无效内存错误 printf s n FINE 5 printf s LENGTH IS d n FINE 6 strlen buffer char realloc buffer strlen b
  • django-rest-framework - POST 请求返回“不允许使用方法\”GET\”。”

    我已经按照安装教程设置了 django rest auth 但我无法使用登录 API 端点 当我发送包含正确信息的 POST 请求时 我收到 405 状态错误 响应为 不允许方法 GET 但是 当我导航到实际 URL 并从在线表单发布它时
  • scala中的协变类型参数需要在java接口中保持不变

    我有一个看起来像这样的特征 一些进一步的信息可以在我自己提出了这个相关问题 https stackoverflow com questions 3695990 inheritance and automatic type conversio
  • TypeScript 中的类型安全谓词函数

    我的目标是编写谓词函数 isNull and isUndefined例如 在 TypeScript 中满足以下条件 可以独立使用 array filter isNull 可以逻辑组合 array filter and not isNull
  • 通过批处理文件自动化 cygwin

    长话短说 我们有多个服务器 我们每晚都在其上运行 perflog 监控 我的工作是将这些日志转换为 csv 格式并将它们发送到我的电子邮件 这一点已经通过前员工编写的 sh 脚本实现了自动化 我想要自动化的是在 perfmon 日志记录之后
  • 如何在ListView的TextCell中换行文本?

    如何在ListView的TextCell中换行文本 我尝试设置HasUnevenRows to True但这没有帮助 您不能使用 Xamarin 的 开箱即用 TextCell 功能 但是 您应该能够创建一个 ViewCell 并利用换行模
  • 无法从 iOS 中的框架访问 .nib(XIB) 文件

    我已经从现有的代码库中创建了一个框架 并尝试在新的代码库中使用它 这很好用 但是当我尝试访问属于我的框架包的一部分的 nib 文件时 我的应用程序崩溃了 这是我用来访问视图控制器 XIB 文件的代码 testViewController c
  • 显示班级图片 10 秒

    我有下面给出的代码显示9 boxes 其值如下digital time 还有一个班级box002显示digits相当于随机选择的九个盒子的值 box002 can be dragged to digital time starting wi
  • 将 VLMC 拟合到很长的序列

    我正在尝试将 VLMC 拟合到最长序列为 296 个状态的数据集 我这样做如下所示 Load libraries library PST library RCurl library TraMineR Load and transform d
  • 连接到 Revolut 沙盒

    我正在尝试创建与 Revolut 的客户端连接 我正在关注他们的tutorial https revolutdev github io business api getting started 但是我被困在兑换授权码 到目前为止我所做的 在
  • 为什么从 openAI 导入 Universe 模块时出现“无效语法”错误

    当我导入时universe来自 openAI 的模块 我收到以下错误 Traceback most recent call last File
  • iOS Safari Mobile 禁用上一个和下一个选择输入

    上周五我发现了关于此问题的类似问题 但似乎无法再次找到它 如果有人能指出我正确的方向 那就太好了 本质上我在一个页面上有多个选择菜单 第一个在加载时填充 第二个在第一个选择时填充 够简单的 但是 在 iOS 设备中 当您点击选择元素时 它会
  • 查找配对的 Android 蓝牙设备是否在范围内的正确方法?

    我想编写一个充当蓝牙客户端的应用程序 我想做的是找出最好的方法来确定我支持的特定设备是否在范围内 而不是一直尝试在其上执行 BluetoothDevice connect 并失败如果不在范围内 这里我们假设设备已经配对 恐怕在特定设备处于范
  • SQLAlchemy 与 count、group_by 和 order_by 使用 ORM

    我有几个函数需要使用 count group by 和 order by 进行一对多连接 我使用 sqlalchemy select 函数生成一个查询 该查询将返回一组 id 然后我对其进行迭代以对各个记录执行 ORM 选择 我想知道是否有
  • 从命令行运行 Maven 插件的语法是什么。

    我看到这里已经有人问过这个问题 如何从命令行执行maven插件 https stackoverflow com questions 12930656 how to execute maven plugin from command line
  • 每次我执行 docker compose up 时,Docker 都会创建一个新卷

    我有一个 docker compose 文件 可以启动多个服务 我刚刚收到一条错误消息 指出我的磁盘空间不足 因此我输入 docker system df 并看到我有 21 个卷 如果我有 3 个 docker 容器 每个容器都附加一个卷
  • Bazel:输出目录的genrule

    我刚刚开始与 Bazel 合作 所以 我提前道歉 我没能弄清楚这一点 我正在尝试运行一个命令 将一堆文件输出到一个目录 并使该目录可用于后续目标 我有两种不同的尝试 使用正则 写我自己的规则 我天真地希望能用一个来做到这一点genrule
  • 如何修复 getImageData() 错误画布已被跨源数据污染?

    我的代码在本地主机上运行得很好 但在网站上却不起作用 我从控制台收到此错误 对于这一行 getImageData x y 1 1 data Uncaught SecurityError Failed to execute getImageD
  • 在另一个 Rmd 中运行选定的块

    我已经在源 Rmd 文件中运行了分析 并且希望仅使用few来自源的块 我已经看到了一些关于从源 Rmd 中提取所有块的答案来自另一个 Rmd 中的 Rmd 文件的源代码 https stackoverflow com questions 4