當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。