【问题标题】:R autoload library when loading data file加载数据文件时的R自动加载库
【发布时间】:2016-11-25 17:00:15
【问题描述】:

当读取 .rdata 文件中保存的对象时,是否有可能定义一个加载的库。例如:运行后:

library(data.table)
dt1 = data.table(a=1:10,b=letters[1:10])
save(dt1,file="dt.rdata")

dt1 保存为 dt.rdata。

唉,当将该文件读入原始 R 会话时(例如,通过在 Windows 资源管理器中双击该文件)dt1 可用,但相应的 data.table 命令只能在发出附加命令后使用

library(data.table)

在新打开的 R 会话中。是否有某种方法可以在数据文件中定义,在读取相应文件之前/之后要加载某些包或执行某些其他命令?

【问题讨论】:

  • 也许最简单的方法是将其放入一个函数中。像myReader <- function(fileName) {; require(data.table); load(fileName);}; 这样的东西。然后读入数据myReader("dt.rdata")
  • 双击文件并不能完全使其成为可重现分析工作流程的一部分。 “一次性”很好,但根据我的经验,“一次性”很快就会充满脚本并拥有所有适当的脚手架(library() 调用,设置默认值,数据读取部分,数据清理部分,EDA 、模型、图表)从长远来看可以省去很多麻烦。

标签: r packages autoloader data-files


【解决方案1】:

将您的数据保存到不同的工作区并添加一个名为 .First 的函数来加载库。

.First <- function(){library(data.frame)}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2011-11-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多