Je veux sauvegarder des données dans un .RData
fichier.
Par exemple, je voudrais enregistrer dans 1.RData
avec deux fichiers CSV et des informations.
Ici, j'ai deux fichiers csv
1) file_1.csv contains object city[[1]]
2) file_2.csv contains object city[[2]]
et en outre enregistrer d'autres valeurs, pays et population comme suit. Donc, je suppose que je dois tout d’abord créer des objets 'city' à partir de deux fichiers CSV.
La structure de 1.RData peut ressembler à ceci:
> 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.csv
et file_2.csv
avoir un tas de lignes et de colonnes.
Comment créer ce type de RData avec des fichiers et des valeurs csv?
Sinon, lorsque vous souhaitez enregistrer des objets R individuels, je vous recommande d'utiliser saveRDS
.
Vous pouvez enregistrer des objets R en utilisant saveRDS
, puis les charger dans R avec un nouveau nom de variable en utilisant readRDS
.
Exemple:
# 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")
Mais lorsque vous souhaitez enregistrer plusieurs/tous vos objets dans votre espace de travail, utilisez la réponse de Manetheran.
Il existe trois façons de sauvegarder des objets de votre session R:
La fonction save.image()
enregistrera tous les objets actuellement dans votre session R:
save.image(file="1.RData")
Ces objets peuvent ensuite être rechargés dans une nouvelle session R à l’aide de la fonction load()
:
load(file="1.RData")
Si vous souhaitez enregistrer certains objets, mais pas tous, vous pouvez utiliser la fonction save()
:
save(city, country, file="1.RData")
Là encore, elles peuvent être rechargées dans une autre session R à l’aide de la fonction load()
:
load(file="1.RData")
Si vous souhaitez enregistrer un seul objet, vous pouvez utiliser la fonction saveRDS()
:
save(city, file="city.rds")
save(country, file="country.rds")
Vous pouvez les charger dans votre session R en utilisant la fonction readRDS()
, mais vous devrez affecter le résultat à la variable souhaitée:
city <- readRDS("city.rds")
country <- readRDS("country.rds")
Mais cela signifie également que vous pouvez attribuer à ces objets de nouveaux noms de variable si nécessaire (c'est-à-dire si ces variables existent déjà dans votre nouvelle session R mais contiennent des objets différents):
city_list <- readRDS("city.rds")
country_vector <- readRDS("country.rds")
Juste pour ajouter une fonction supplémentaire si vous en avez besoin. Vous pouvez inclure une variable dans l'emplacement nommé, par exemple un identifiant de date.
date <- yyyymmdd
save(city, file=paste0("c:\\myuser\\somelocation\\",date,"_RData.Data")
C'était vous pouvez toujours garder un contrôle de quand il a été exécuté