You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R Markdown编织报错:环境中存在MSTData但提示未找到

R Markdown编织报错:object 'MSTData' not found 排查与解决

问题详情

编织R Markdown文档时反复触发以下报错:

Error in eval(expr, envir, enclos) : object 'MSTData' not found
Calls: ... withVisible -> eval_with_user_handlers -> eval -> eval
Execution halted

MSTData对象已存在于当前工作环境,单独运行代码块可正常分析数据,但尝试重新编织、重命名数据等操作后问题仍未解决。相关代码片段如下:

全局设置与包加载

knitr::opts_chunk$set(echo = TRUE)
library(tidyverse)
library(magrittr)

过滤参与者数据

过滤参与者数据

# 重命名缩短MST数据名称
Filtered <- dplyr::select(MSTData, Q11, Q12, Q13, Q14) 
# 初始45名参与者,过滤NA值后剩余41名
Filtered <- na.omit(Filtered)

Filtered

过滤连线测试数据

过滤连线测试数据

Trail <- dplyr::select(TM_FC, subject, group, trail1Time, trail2Time) %>%  dplyr::filter(subject != 208) 
# 过滤分析不需要的列
# 移除参与者208,因无Trail B数据记录
Trail


trail_fin <- Trail |>
  dplyr::filter(group == 2) 
# 仅保留用于计算最终时间的trail数据

trail_fin

trail_fin <- trail_fin |>
  dplyr::mutate(
        BminusA = trail2Time-trail1Time
  )
trail_fin

208

FAS数据处理

FAS数据

FAS <- dplyr::select(FAS_Counted, subject, response, ...19)
# 需解决列重命名问题以统计准确词数

FAS

解决思路

  • 确保数据加载代码在文档内执行:MSTData可能是你手动加载到全局环境的,但R Markdown编织时使用独立的新环境,必须在文档内的代码块中添加数据加载逻辑(如read.csv()、load()),且该代码块未设置eval=FALSE。
  • 检查代码块执行顺序:R Markdown默认按文档内代码块的先后顺序执行,若MSTData的加载代码块在使用它的代码块之后,会触发找不到对象的报错,调整顺序确保数据先加载后使用。
  • 清理环境后重新测试:关闭当前R会话,重新打开后仅通过R Markdown文档内的代码完成数据加载与分析,避免全局环境残留对象干扰排查。
  • 核对数据名称拼写:确认文档内代码中MSTData的拼写(含大小写)与实际加载的对象名称完全一致,R对大小写敏感。

内容的提问来源于stack exchange,提问作者Cl699

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 19:23:00