为什么 R CMD BATCH 中选项的行为不同(error = utils::dump.frames)?

2024-01-08

这是这个问题的后续:R CMD BATCH 或 Rscript 错误停止 https://stackoverflow.com/questions/23327746/r-cmd-batch-or-rscript-with-stop-on-error/23329069#23329069

如果在我的 .Rprofile 中我有

options(error = utils::dump.frames)

那么 R CMD BATCH 不会因错误而停止。

如果我跑R CMD BATCH在包含以下内容的文件上:

stop("I really mean stop!")
cat("no, I dont want this printed")

The cat命令仍然执行。

但当我这样做时source在该文件上,R 停止。为什么这是真的?我如何使行为一致?


1.关于你问题的第一部分:

?dump.frames says:

“如果 dump.frames 作为错误处理程序安装,即使在非交互式会话中,执行也会继续。请参阅示例以了解如何转储然后退出。”

这就是为什么R CMD BATCH不会因错误而停止。

如果您也想停止执行,请使用(取自上面的帮助示例!):

## A possible setting for non-interactive sessions
options(error = quote({dump.frames(to.file = TRUE); q(status = 1)}))

2.关于你的问题的第二部分(代码示例stop):

我想你的 dump.frames 错误处理程序也处于活动状态,因为将其输入到你的.Rprofile因此,由于上述原因,代码继续执行。

3 为什么R在获取相同代码时立即停止?

抱歉,不知道(所以我的答案目前还不完整)

4. 如何使行为一致?

通过使用上面 1.) 的错误处理程序,代码将始终在出现错误时停止。

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

为什么 R CMD BATCH 中选项的行为不同(error = utils::dump.frames)? 的相关文章

随机推荐

  • 如何使用KeyEventDispatcher

    我一直在尝试制作一个 Pong 克隆作为初学者的项目 但我遇到了障碍 我已经设法达到键盘支持的目的 但是键盘重复延迟开始出现 我还没有找到任何可用的方法来使用 KeyEventDispatcher 它甚至不会启动dispatchKeyEve
  • 使用 boto3 列出 100 多个堆栈

    我们需要列出所有处于 CREATE COMPLETE 状态的堆栈 在我们的 AWS 账户中 我们有超过 400 个这样的堆栈 我们为此编写了以下代码 stack session session client cloudformation l
  • 正向回顾与非捕获组:不同的行为

    我使用 python 正则表达式 remodule 在我的代码中并注意到在这些情况下的不同行为 re findall r s a z a xyz b abc non capturing group results in a xyz b ab
  • QT/C++ - 从不同的类访问 MainWindow UI

    我是 C 和 Qt 的初学者 所以这也许是微不足道的 当然感觉应该很简单 但我已经寻找答案几个小时了 但找不到解决方案 我正在制作一个简单的棋盘游戏 其中 MainWindow 的 ui 用 QtDesigner 制作 包含游戏板的画布 Q
  • 如何向列表添加多种数据类型

    我的清单如下 var serie line new name series name data new List
  • 函数构造函数与函数语句

    today 我读过我们有一种通过函数构造函数声明函数的方法 http www tutorialspoint com javascript javascript function constructors htm 但我从未见过使用的实际实现F
  • 敲除无法处理绑定“foreach”

    我是 Knockout 的新手 我正在构建一个实际上是大型计算器的应用程序 到目前为止 我在一个页面上运行了两个淘汰赛实例 一个实例工作得很好 但另一个实例完全损坏并且似乎根本无法注册 下面是我的 Javascript fetchYear
  • 使用 Springfox 在 Swagger UI 文档中添加标头参数

    我想在我的 Rest 服务的自动生成的 swagger ui 文档中添加一个标头参数字段 我使用 Spring 和 Springfox public ResponseEntity
  • 在 Objective-C 中将小数转换为分数?

    我试图将小数点后的所有内容显示为分数 找不到关于 Objective c 的太多关于如何实现这一点的信息 我在用double对于我的变量格式 不确定这是否重要 这就是我格式化答案的输出的方式 theTextField setText NSS
  • Rails 4 - 如何自动检测用户的位置并将其显示在网络应用程序上?

    我目前有一个正在运行的应用程序 我希望 Rails 通过 IP 地址检测访问者的位置 并在我的网站主页上显示城市和州 例如 它将显示 Hello Name from City State 访客无需输入任何内容 我知道 GeoIP 和地理编码
  • R中将长列表分成指定长度的短列表

    这与之前的一个问题密切相关here https stackoverflow com questions 45663125 divide long list into shorter lists in r 然而我需要一些稍微不同的东西 我有一
  • ASP.NET MVC - 将 JSON DateTime 传递到控制器而不映射到控制器参数

    我正在使用 jQuery 日历来显示事件 该日历旨在从服务器提取数据 在初始化时 日历会触发 AJAX 请求以获取事件对象数组 json 编码 到目前为止一切都很好 但是 此请求包含 JSON 编码的日期和时间 至少我的实现是这样 代码如下
  • 反应式形式不接收默认输入值

    我正在使用 Angular 并且有一个用于编辑项目的反应形式 当我打开组件进行编辑时 输入会正确加载对象的值 但如果我不单击输入并更改值 则反应形式的值将为空 我的代码在这里
  • Go 支持易失性/非易失性变量吗?

    我是这门语言的新手 所以请耐心等待 我很好奇 GO 如何处理线程可用的数据存储 从某种意义上说 非局部变量也可以是非易失性的 例如在 Java 中 GO 有通道的概念 从本质上讲 线程间通信意味着它绕过处理器缓存 直接读 写堆 另外 在 g
  • Python 中有“multimap”实现吗?

    我是 Python 新手 并且熟悉以下的实现多重地图 http en wikipedia org wiki Multimap in other http www sgi com tech stl Multimap html 语言 http
  • 无法在 PHP 中注销[重复]

    这个问题在这里已经有答案了 我正在尝试用 PHP 制作注册 登录表单 但无法注销 我不断收到以下错误 致命错误 未捕获的 ArgumentCountError 函数 USER construct 的参数太少 第 4 行在 C xampp h
  • 防止 CSS 工具提示超出页面/窗口

    我有一个仅 CSS 的工具提示 它加载span作为工具提示 当您hover链接 然而 这是使用 CSS 定位的 但如果链接靠近页面顶部或侧面 则工具提示会离开页面的侧面 顶部 有没有办法使用 css 来进行此更改 或者我必须依赖 JS 我已
  • 从 X 值获取 .NET 图表系列中的 Y 值

    使用 C 和 NET 图表 我正在尝试绘制多个波形图 并且希望将鼠标移过图表区域 并让工具提示在该 X 值位置处显示图表中每个系列的 Y 值 at xValue 12 3 2
  • 在 R 中将 UTM 转换为纬度/经度

    我有一个包含 9 000 多个 UTM 坐标的 csv 文件 我想将其转换为十进制 但遇到了一些麻烦 我搜索了此处和其他地方发布的几篇帖子 但似乎找不到将我的 UTM 集转换为可用且准确的纬度 经度的解决方案 我基本上有两个问题 1 有人看
  • 为什么 R CMD BATCH 中选项的行为不同(error = utils::dump.frames)?

    这是这个问题的后续 R CMD BATCH 或 Rscript 错误停止 https stackoverflow com questions 23327746 r cmd batch or rscript with stop on erro