Je me retrouve souvent à écrire des scripts R qui génèrent beaucoup de sortie. Je trouve plus propre de mettre cette sortie dans ses propres répertoires. Ce que j'ai écrit ci-dessous vérifiera l'existence d'un répertoire et s'y déplacera, ou créera le répertoire puis se déplacera dans celui-ci. Y a-t-il une meilleure façon d'aborder cela?
mainDir <- "c:/path/to/main/dir"
subDir <- "outputDirectory"
if (file.exists(subDir)){
    setwd(file.path(mainDir, subDir))
} else {
    dir.create(file.path(mainDir, subDir))
    setwd(file.path(mainDir, subDir))
}
          setwd()dans le code R - il défait fondamentalement l'idée d'utiliser un répertoire de travail car vous ne pouvez plus facilement déplacer votre code entre les ordinateurs.
                .batfichier que l'utilisateur final n'aura jamais à modifier.
                setwdde travailler avec des chemins réseau. Il vous suffit de fournir des chemins pour enregistrer les résultats et de continuer à travailler avec le chemin actuel (celui établi au démarrage de la session R). Ou commencez R avec le répertoire de travail de désir.
                out_dir <- "path/to/output/directory"puis utilisez write.table(file = file.path(out_dir,"table_1.csv"), ...). Ou même out_file <- function(fnm) file.path("path/to/output/directory", fnm)et ensuite write.table(file = out_file("table_1.csv"), ...)(méthode similaire que j'utilise lorsque je travaille avec des lecteurs réseau).