Comment vérifier l’existence d’un fichier local

J’ai créé un fichier de démarquage R qui commence par charger un fichier sur le Web. J’ai trouvé que le cache = TRUE était un peu flou, donc je veux mettre une condition si pour vérifier le fichier téléchargé avant de le télécharger.

Code actuel – Télécharge toujours le fichier

fileURL <- "https://dl.dropbox.com/u/7710864/courseraPublic/samsungData.rda" setInternet2(TRUE) download.file(fileURL ,destfile="./data/samsungData.rda",method="auto") load("./data/samsungData.rda") 

Code désiré – téléchargez uniquement si si ce n’est pas déjà téléchargé

  destfile="./data/samsungData.rda" fileURL <- "https://dl.dropbox.com/u/7710864/courseraPublic/samsungData.rda" if (destFile doesNotExist) { setInternet2(TRUE) download.file(fileURL ,destfile,method="auto") } load("./data/samsungData.rda") } load(destfile) 

Quelle syntaxe me donnera la condition “destFile doesNotExist”

Vous pouvez utiliser tryCatch

  if(!file.exists(destfile)){ res <- tryCatch(download.file(fileURL, destfile="./data/samsungData.rda", method="auto"), error=function(e) 1) if(dat!=1) load("./data/samsungData.rda") } 

Selon la réponse donnée par @agstudy

  destfile="./data/samsungData.rda" fileURL <- "https://dl.dropbox.com/u/7710864/courseraPublic/samsungData.rda" if (!file.exists(destfile)) { setInternet2(TRUE) download.file(fileURL ,destfile,method="auto") } load("./data/samsungData.rda") } load(destfile) 

Un moyen simple de vérifier l’existence d’un fichier dans votre répertoire de travail est le suivant: what (list.files () == “nameoffile.csv”)

Cela ne répond pas exactement à sa question mais j’ai pensé que cela pourrait être utile pour quelqu’un qui veut simplement vérifier si un fichier particulier est présent dans son répertoire.