如何使用 Knit 将 .Rmd 文件中的每个块提取到多个 .R 文件

2023-12-01

我们可以将 .Rmd 文件 purl 为 .R 文件,但是如何将 .Rmd 文件中的每个块 purl 为单独的由块标签命名的 .R 文件。


假设您有以下名为“test.Rmd”的 .Rmd 文档:

This is a test.

```{r chunk1}
1:4
```

This is a further test.

```{r chunk2}
5:6
```

If purl-ed,您将得到以下内容:

## ----chunk1--------------------------------------------------------------
1:4


## ----chunk2--------------------------------------------------------------
5:6

您可以首先使用将其放入单独的文件中purl, 使用read_chunk函数,然后将每个块写入单独的文件:

library("knitr")
p <- purl("test.Rmd")
read_chunk(p)
chunks <- knitr:::knit_code$get()
invisible(mapply(function(chunk, name) {
    writeLines(c(paste0("## ----",name,"----"), chunk), paste0("chunk-",name,".R"))
}, chunks, names(chunks)))
unlink(p) # delete the original purl script
knitr:::knit_code$restore() # remove chunks from current knitr session

这会为每个名为的块生成一个文件"chunk-chunk1.R", "chunk-chunk2.R"等仅包含该块的代码。

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

如何使用 Knit 将 .Rmd 文件中的每个块提取到多个 .R 文件 的相关文章

  • R中的一元加/减是什么?

    来自 R 的详细信息部分Syntax http stat ethz ch R manual R patched library base html Syntax html帮助页面 定义了以下一元和二元运算符 他们被列出 在优先级组中 从最高
  • 我无法下载 R 中的 reshape2 包 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我在尝试安装 R 包时收到此响应 gt installed packages reshape2 Package LibPath V
  • 使用 purrr 迭代替换数据帧列中的字符串

    我想用purrr使用以下命令在数据框列上迭代运行多个字符串替换gsub 功能 这是示例数据框 df lt data frame Year 2019 Text c rep a aa 5 rep a bb 3 rep a cc 2 gt df
  • 如何计算R中移动窗口内的平均斜率

    我的数据集包含2个变量y 和 t 05s y 每 05 秒测量一次 我正在尝试计算移动中的平均坡度20秒窗口 即计算第一个 20 秒斜率值后 窗口向前移动一个时间单位 05 秒 并计算下一个 20 秒窗口 在以下位置生成连续 20 秒斜率值
  • 选择 R 中的数据表中隐藏时(在绿色加号下方)列的显示顺序

    Context 使用 DataTables 库制作交互式表格时 当屏幕宽度对于列的数量和宽度来说太窄时 列将隐藏在绿色 号下 我有一个非常宽的表格 有 20 多列 其中一些内容非常冗长 因此某些列在所有屏幕宽度下总是隐藏的 每次隐藏新列时
  • 将数据框中的每个 x 个字符拆分为字符串

    我知道这里有一些关于每隔一段时间分割一个字符串的答案nth字符 例如this one https stackoverflow com questions 23208490 split each character in r and this
  • 如何使用 usmap 标记数字而不是名称?

    我知道 usmap 有一个选项label in plot usmap 我想标记一些数字 而不是状态名称 我想 usmap 中应该有与州质心坐标相关的数据 但我不知道如何找到它 如果我能得到 坐标然后我可以用它来标记数字geom text 这
  • 为什么 dplyr filter() 不能在函数内工作(即使用变量作为列名)?

    使用 dplyr 函数对数据进行过滤 分组和变异的函数 基本管道序列在函数之外工作得很好 这就是我使用真实列名称的地方 将其放入一个函数中 其中列名称是一个变量 并且某些函数可以工作 但有些函数则不能 尤其是 dplyr filter 例如
  • 在 R 中创建虚拟变量,排除某些情况为 NA

    我的数据看起来像这样 V1 V2 A 0 B 1 C 2 D 3 E 4 F 5 G 9 我想创建一个虚拟变量R where 0 1 1 2 3 4 and NA 0 5 9 应该很简单 有人可以帮忙吗 我们可以转换V2 into a fa
  • Purrr::map_df() 删除 NULL 行

    使用时purrr map df 我偶尔会传递一个数据框列表 其中一些项目是NULL 当我做 map df 返回行数少于原始列表的数据框 我想发生的事情是这样的map df calls dplyr bind rows 它忽略了NULL价值观
  • 以引用透明的方式从函数的省略号参数中提取符号

    事情又发生了 我正要按下发布答案按钮的问题被删除了 我正在寻找一种方法来从函数的省略号参数中提取绑定到符号的对象的值以及符号 也就是说 我试图以引用透明的方式从省略号中提取符号 我尝试过使用替代品和lazy dots 但没有成功 funct
  • r 中训练和测试数据的最小最大缩放/归一化

    我正在创建一个函数 它将训练集和测试集作为其参数 最小 最大缩放 标准化并返回训练集并使用这些same最小值和最小 最大范围的值 标准化并返回测试集 到目前为止 这是我想出的功能 min max scaling lt function tr
  • 朴素贝叶斯分类器仅基于先验概率做出决策

    我试图根据推文的情绪将推文分为三类 买入 持有 卖出 我正在使用 R 和包 e1071 我有两个数据框 一个训练集和一组需要预测情绪的新推文 训练集数据框 text sentiment this stock is a good buy Bu
  • 将阴影区域添加到五分位数之间的直方图中

    All 我有一个包含 2 个直方图的图表 其中我还绘制了代表第 20 40 60 和 80 个百分位数的线条 下面的代码使用虚拟数据重现了类似的图表 data lt rbind data frame x rnorm 1000 0 1 g o
  • 如何获得所有大于x且有位置的数字?

    V lt c 1 3 2 4 2 3 1 X lt 3 pos lt V V X pos is 3 3 我需要的是所有 3 个的位置 I need 2 and 6 哪些职位是3 in V Use which pos lt which V 3
  • 如何在 R 中匹配多个 ggplot2 图中的调色板?

    自从被问到这个问题以来已经有一段时间了 但我知道一个事实 我很快就会提取新数据 我想弄清楚如何用这种技术来绘制它 看起来评论和答案中的人知道如何做到这一点 但我无法完全弄清楚所给我的内容 还有人想尝试一下吗 我正在尝试使用具有多个级别的因子
  • ggplot2:如何标记事件发生的日期

    我想从第二个情节中获取第一个情节的信息 第二张图表示事件发生的天数 它看起来更宽 因为它没有图例 但它是相同的时间尺度 我选择在第一个图中手动分配颜色 I would like to overlay the second plot dots
  • 将不均匀的层次列表转换为数据框

    我认为还没有有人问过这个问题 但是有没有一种方法可以将具有多个级别和不均匀结构的列表的信息组合成 长 格式的数据帧 具体来说 library XML library plyr xml inning lt http gd2 mlb com c
  • 以编程方式将字符串宽度值插入到 sprintf() 中

    我正在尝试以编程方式将字符串宽度值插入到sprintf 格式 期望的结果是 sprintf 20s hello 1 hello 但我想插入20在同一通话中即时进行 因此它可以是任何号码 我努力了 sprintf ds 20 hello 1
  • 如何绘制具有显着性水平的箱线图?

    前段时间问了一个关于绘制箱线图的问题Link1 https stackoverflow com questions 14604439 plot multiple boxplot in one graph 我有一些包含 3 个不同组 或标签

随机推荐

  • 通过 Odoo 中的代码发送电子邮件时出错

    我创建了一个通过单击模块 linh warehoues 中的按钮 发送电子邮件 来发送电子邮件的函数 但出现以下错误 关系 mail thread 不存在 我实在不明白这是什么意思 我还检查了 mail thread py 中存在 mail
  • if 语句中的 getline

    从我读到的来看 getline 在布尔上下文中使用会返回隐式转换为void 我在网络上没有找到任何真正引用此声明的地方 它到处都说隐式转换不存在 并且在布尔上下文中指针应该是相同类型的 并且如果ptr 0 than 0转换为指针类型ptr
  • 检查嵌套字典内的成员资格

    这是此问题的后续问题 Python DictReader 跳过缺少列的行 事实证明我很愚蠢 并且使用了错误的 ID 字段 顺便说一句 我在这里使用的是 Python 3 x 我有一个员工字典 由字符串 directory id 索引 每个值
  • 获取Xamarin图库图像的路径?

    我正在尝试获取图库图像的路径 我正在获取存储在内部存储中但不是外部存储中的图像的路径 我还启用了已授予的读写存储和相机访问权限 这是我的代码 void ChoosePhoto try var imageIntent new Intent i
  • PHP 不区分大小写的 in_array 函数

    使用时是否可以进行不区分大小写的比较in array功能 因此 使用这样的源数组 a array one two three four 以下查找都将返回 true in array one a in array two a in array
  • NHaml 可以用作通用模板引擎吗? (MVC 之外)

    我见过很多人喜欢在 ASP NET MVC 中使用 NHaml 视图引擎 但我想知道 NHaml 是否可以用作 NET 中的通用模板引擎 我想在 ASP MVC 视图引擎环境之外从控制台应用程序使用 NHaml 或者生成 HTML 电子邮件
  • VS2012 - 服务器/数据库资源管理器中未显示“创建表”或“显示表数据”菜单选项[重复]

    这个问题在这里已经有答案了 可能的重复 让 Sql Server Data Tools 与 Visual Studio 2012 Express 候选版一起使用 我已经安装了 VS 2012 for Web 和 SQL Server 201
  • 正则表达式:匹配除特定模式之外的所有内容

    我需要一个能够匹配所有内容的正则表达式but以特定模式开头的字符串 具体而言index php以及接下来的内容 例如index php id 2342343 正则表达式 匹配所有内容but a string starting with a
  • laravel Eloquent ORM 多表插入

    我如何使用 laravel Eloquent ORM 关系发出单个请求来插入多个表 表1 用户 id name email 表 2 职位 id user id content 表 3 图像 id user id post id 图片名称 关
  • 在 powershell 中复制文件同时保留文件夹结构的正确方法是什么?

    我似乎永远无法把这件事做好 我有一个现有的文件夹c MyApps Websites MySite已经有一个正在运行的现有网站 我已经下载了位于以下的最新版本c temp MySite artifacts 当我尝试运行这个时 source c
  • 一个人的补足是一个现实世界的问题,还是一个历史问题?

    另一个问题询问如何确定 C 中的奇数 偶数 并且惯用的 x 1 方法被正确标记为损坏基于补语的C 标准允许的系统 系统真的存在于计算机博物馆之外的 现实世界 中吗 我从 20 世纪 70 年代就开始编码 而且我很确定我从未遇到过这样的野兽
  • 接到来电时如何调用活动。

    大家好 我想在默认来电活动上调用我自己的活动 我已经使用广播接收器完成了此操作 我在接到来电时调用我的活动 但当我第二次接到来电时 它第一次工作正常 然后默认来电活动将超过我的活动 我不知道问题是什么 有人可以帮助我吗 显现
  • 动态改变Android Listview的高度

    我的 XML 文件的格式如下 LinearLayout ScrollView RelativeLayout LinearLayout
  • navigator.share(Web Share api)共享React App文本,而不是我放置的文本

    我正在使用 React 不是 React Native 并且尝试使用 Web Share Api 通过我的应用程序共享一些文本和 url 但是 当我打开任何要共享的应用程序时 它会从我放置的文本更改为 React 本地开发的默认文本 是的
  • 无法在 Firefox WebDriver 上获取控制台日志

    我使用的是 Firefox 版本 53 Geckodriver 版本 0 16 selenium 版本 3 4 我想获取 webdriver 的控制台日志 from selenium import webdriver from seleni
  • iPhone 音频会话属性

    我正在开发一个应用程序 它应该具有以下有关音频的属性 可以同时录制和播放声音 可以将音频输出与其他应用程序混合 例如iPod 未插入耳机时扬声器音频输出 插入耳机时音频输出 我使用了以下代码 AVAudioSession audioSess
  • 将所有 Excel 加载项模块导出到 .bas 文件的最快方法是什么?

    我正在开发一个包含许多模块的大型 Excel 插件 我需要将它们导出到 bas 文件以使用 SVN 管理它们 我知道快速导出它们的热键 Ctrl E 但我的模块数量太多 我仍然浪费了太多时间来导出它们 有谁知道更快的方法来做到这一点 这是一
  • 从内存流复制时显示 Windows 文件复制对话框?

    我的应用程序将从 MemoryStream 将文件写入磁盘 我不想创建自己的进度对话框 而是喜欢使用现有的 Windows 功能 例如SHFileOperation Win32 API 显示带有动画和进度条的标准文件复制对话框 但是 此特定
  • Codeigniter:无法访问样式表

    我的 Codeigniter 文件夹的目录结构如下 你可以看到我已经把我所有的资产都放到了assets应用程序根目录下的文件夹 基本 URL 定义为 config base url http kamran dev Codeigniter a
  • 如何使用 Knit 将 .Rmd 文件中的每个块提取到多个 .R 文件

    我们可以将 Rmd 文件 purl 为 R 文件 但是如何将 Rmd 文件中的每个块 purl 为单独的由块标签命名的 R 文件 假设您有以下名为 test Rmd 的 Rmd 文档 This is a test r chunk1 1 4