簡體   English   中英

如何將數據文件保存到 .RData 中?

[英]How to save data file into .RData?

我想將數據保存到.RData文件中。

例如,我想將兩個 csv 文件和一些信息保存到1.RData

在這里,我有兩個 csv 文件

1) file_1.csv contains object city[[1]]
2) file_2.csv contains object city[[2]]

並另外保存其他值,國家和人口如下。 所以,我想我首先需要從兩個 csv 文件中創建對象“城市”。

1.RData 的結構可能如下所示:

> data = load("1.RData")

> data
[1] "city"  "country"  "population"

> city
  [[1]]               
  NEW YORK         1.1
  SAN FRANCISCO    3.1

  [[2]]
  TEXAS            1.3
  SEATTLE          1.4

> class(city)
  [1] "list"

> country
  [1] "east"  "west"  "north"

> class(country)
  [1] "character"

> population
  [1] 10  11  13  14   

> class(population)
  [1] "integer"

file_1.csvfile_2.csv有一堆行和列。

如何使用 csv 文件和值創建這種類型的 RData?

或者,當您想要保存單個 R 對象時,我建議使用saveRDS

您可以使用saveRDS保存 R 對象,然后使用saveRDS將它們加載到具有新變量名的readRDS

例子:

# Save the city object
saveRDS(city, "city.rds")

# ...

# Load the city object as city
city <- readRDS("city.rds")

# Or with a different name
city2 <- readRDS("city.rds")

但是,當您想在工作區中保存許多/所有對象時,請使用 Manetheran 的答案。

有三種方法可以從 R 會話中保存對象:

保存 R 會話中的所有對象:

save.image()函數將保存當前在 R 會話中的所有對象:

save.image(file="1.RData") 

然后可以使用load()函數將這些對象加載回新的 R 會話:

load(file="1.RData")

在 R 會話中保存一些對象:

如果你想保存一些但不是所有的對象,你可以使用save()函數:

save(city, country, file="1.RData")

同樣,這些可以使用load()函數重新加載到另一個 R 會話中:

load(file="1.RData") 

保存單個對象

如果要保存單個對象,可以使用saveRDS()函數:

saveRDS(city, file="city.rds")
saveRDS(country, file="country.rds") 

您可以使用readRDS()函數將這些加載到 R 會話中,但您需要將結果分配給所需的變量:

city <- readRDS("city.rds")
country <- readRDS("country.rds")

但這也意味着您可以根據需要為這些對象提供新的變量名稱(即,如果這些變量已存在於您的新 R 會話中但包含不同的對象):

city_list <- readRDS("city.rds")
country_vector <- readRDS("country.rds")

只是在您需要時添加附加功能。 您可以在命名位置中包含一個變量,例如日期標識符

date <- yyyymmdd
save(city, file=paste0("c:\\myuser\\somelocation\\",date,"_RData.Data")

這是你可以隨時檢查它何時運行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM