[英]How to assign a data frame from a Rdata file
我在以下目錄“ /..../1_5_setpoint.Rdata”中有一個data.frame。
數據幀的名稱為“ setpoint”,文件的名稱為“ 1_5_setpoint”。 我想創建一個名稱為“ 1_5_setpoint”的data.frame。 這是我的代碼:
assign("1_5_setpoint", get(load("/..../1_5_setpoint.Rdata")))
問題是,我最終不得不訪問內存中的數據幀:一個稱為“設定點”(我不想要這個),另一個稱為“ 1_5_setpoint”(我想要這個)。
如果數據很大,可能會導致問題。
有什么建議么?
@Ron是正確的解決方案,@ Konrad是正確的。 有時,您無法選擇獲取RDS文件,而只能獲取.RData文件。 在那種情況下,我知道的最簡單的方法是使用一個函數加載數據,然后返回其中的唯一變量,或者允許選擇要返回的變量。
一個例子可能是:
myLoad <- function(filename, variable) {
tmp.env <- new.env()
varnames <- load(filename, envir=tmp.env)
if (missing(variable)) {
## Choose the variable name as the only variable in the file or
## give an error.
if (length(varnames) == 1) {
return(get(varnames, envir=tmp.env))
} else {
stop("More than one variable present in the file, please specify which variable to extract. Choices are: ",
paste(varnames, sep=", "))
}
} else {
return(get(variable, envir=tmp.env))
}
}
ls()
save(mtcars, file="mtcars.RData")
mtcars_1_5 <- myLoad("mtcars.RData")
identical(mtcars, mtcars_1_5)
ls()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.