Je suis en train de mettre en œuvre un code dans mon script qui va créer un nouveau dossier sur mon ordinateur et enregistrer des parcelles en elle, en utilisant:Comment écraser un dossier sur l'ordinateur à l'aide des fonctions en R
daily <- "D:/Work/R/Daily"
dir.create(daily)
for (d in unique(data.air$yr_day)) {
mypath <- file.path(daily, paste(name, d, ".png", sep = ""))
png(filename = mypath, width = 963, height = 690)
timePlot(subset(data.air, yr_day == d),
plot.type = "p",
y.relation = y.scale,
pollutant = c("co2.ppm", "o2.permeg", "apo"),
date.pad = TRUE,
pch = c(19,19,19),
cex = 0.2,
xlab = paste("Time of day in hours on", d),
ylab = "CO2, O2, and APO concentrations",
name.pol = c("CO2 (ppm)", "O2 (per meg)", "APO (per meg)"),
date.breaks = 24,
date.format = "%H:%M"
)
dev.off()
}
Cependant , après la première manche, chaque fois que je lance à nouveau le code, la fonction ne remplace pas les anciens dossiers et les parcelles, et retourne à la place cette erreur:
Warning message:
In dir.create(daily) : 'D:\Summer Work with Andrew\R\Daily' already exists
alors, comment puis-je modifier le code afin qu'il écrase les anciens graphiques/dossiers avec de nouveaux chaque fois que je réexécute le code?
Merci
Vous n'avez pas besoin de remplacer le chaque dossier. Vous pouvez simplement ajouter en haut: 'if (! File.exists (daily)) dir.create (daily)'. Cela créera le dossier 'daily' seulement s'il n'existe pas déjà. Les parcelles sont automatiquement écrasées. – ytk
@ytk ajoutant votre ajustement s'est débarrassé du message d'avertissement, cependant, il n'a pas semblé que les tracés sont remplacés (j'ai vérifié la date créée et c'était l'ancienne date) –
Tester si le répertoire existe est ce que 'dir.create 'fais déjà. Pour ne pas voir l'avertissement, utilisez 'dir.create (chemin, showWarnings = FALSE)'. Si vous voulez supprimer tout dans le répertoire, vous pouvez 'unlink (dir)' avant d'appeler 'dir.create (dir)' – Ulrik