当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R load 重新加载保存的数据集


R语言 load 位于 base 包(package)。

说明

重新加载使用函数 save 编写的数据集。

用法

load(file, envir = parent.frame(), verbose = FALSE)

参数

file

(可读binary-mode)connection或给出要加载的文件名的字符串(当tilde expansion完成时)。

envir

应加载数据的环境。

verbose

加载过程中是否应该打印项目名称?

细节

load可以加载R以当前或任何早期格式保存的对象。它可以读取压缩文件(参见save)直接从文件或合适的连接(包括调用url)。

not-open 连接将以 "rb" 模式打开并在使用后关闭。除 gzfilegzcon 连接之外的任何连接都将包装在 gzcon 中,以允许处理压缩保存:请注意,这会使连接处于更改状态(特别是 binary-only),并且它需要显式关闭(不会是garbage-collected)。

仅有的R以当前格式保存的对象(自使用以来R1.4.0) 可以从连接中读取。如果连接上没有可用的输入,则会发出警告,但任何不符合当前格式的输入都将导致错误。

从早期版本加载将给出有关“幻数”的警告:幻数1971:1977来自R< 0.99.0,并且RD[ABX]1R0.99.0 至R1.3.1.这些都已过时,强烈建议您以当前格式重新保存此类文件。

verbose 参数主要用于调试。如果是 TRUE ,那么当加载文件中的对象时,它们的名称将被打印到控制台。如果verbose设置为大于1的整数值,则还将打印与各个对象的属性和其他部分相对应的附加名称。值越大,名称的打印深度就越深。

对象可以通过对命名空间的引用来保存,通常作为函数或公式环境的一部分。即使命名空间不可用,也可以加载此类对象:它被替换为对全局环境的引用并带有警告。该警告标识具有此类引用的第一个对象(但可能有多个)。

不可见地创建的对象名称的字符向量。

警告

已保存R对象是二进制文件,即使是用ascii = TRUE,因此请确保在不转换行尾标记的情况下传输它们。load尝试检测此类转换并给出信息丰富的错误消息。

load(<file>) 替换当前环境(通常是您的工作区 .GlobalEnv )中具有相同名称的所有现有对象,因此可能会覆盖重要数据。使用 envir = 加载到不同的环境中,或者使用 attach(file)(将 load() 加载到 search 路径中的新条目中)要安全得多。

例子



## save all data
xx <- pi # to ensure there is some data
save(list = ls(all.names = TRUE), file= "all.rda")
rm(xx)

## restore the saved values to the current environment
local({
   load("all.rda")
   ls()
})

xx <- exp(1:3)
## restore the saved values to the user's workspace
load("all.rda") ## which is here *equivalent* to
## load("all.rda", .GlobalEnv)
## This however annihilates all objects in .GlobalEnv with the same names !
xx # no longer exp(1:3)
rm(xx)
attach("all.rda") # safer and will warn about masked objects w/ same name in .GlobalEnv
ls(pos = 2)
##  also typically need to cleanup the search path:
detach("file:all.rda")

## clean up (the example):
unlink("all.rda")


## Not run: 
con <- url("http://some.where.net/R/data/example.rda")
## print the value to see what objects were created.
print(load(con))
close(con) # url() always opens the connection

## End(Not run)

也可以看看

savedownload.file;进一步 attach 作为 load() 的包装。

有关底层序列化格式的其他接口,请参阅 unserializereadRDS

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Reload Saved Datasets。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。