+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Invité régulier
    Femme Profil pro
    Inscrit en
    novembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : novembre 2012
    Messages : 37
    Points : 9
    Points
    9

    Par défaut Ecrire dans un dossier dont le nom est à rallonge

    Bonjour à tous,

    Aujourd'hui, je me suis plongée dans l'écriture d'un tableau dans un dossier que j'avais créé dans une boucle for :
    Code :
    1
    2
    3
    4
    5
    for (y in 1:nb_fichier)
     {  dir.create("C:/Users/Charlotte/Desktop/essai/NIST")
        dir.create(c(paste("C:/Users/Charlotte/Desktop/essai/NIST/NIST",y)))
        Tableau1=read.table(fich[y], sep=";", header=T, dec=",") ...
    après y'a ma fonction et à la fin en sort un Tableau4 qui est mon tableau final, qui au final m'intéresse.

    pour l'enregistrer, je veux qu'il l'enregistre dans le dossier NISTy que j'ai créé au debut. Je fais donc :

    Code :
    write.csv(Tableau4,file=c(paste("C:/Users/Charlotte/Desktop/essai/NIST/NIST",y,"/Tableau4.csv")
    et là R n'aime pas du tout il arrête le programme sans rien me dire du tout :
    juste :

    Erreur : '}' inattendu(e) dans :
    " write.csv(Tableau4,file=c(paste("C:/Users/Charlotte/Desktop/essai/NIST/NIST",y,"/Tableau4.csv"))
    }"
    alors j'ai essayé de le mettre dans le répertoire de travail :

    Code :
    write.csv(Tableau4,file="C:/Users/Charlotte/Desktop/essai/Tableau4.csv")
    et là ça marche.

    et j'ai essayé de le mettre dans le répertoire NIST y auquel il correspond (même y dans la boucle for):

    Code :
    write.csv(Tableau4,file="C:/Users/Charlotte/Desktop/essai/NIST/Tableau4.csv")
    Ca marche aussi.
    Mais comment lui indiquer qu'il doit le mettre dans le dossier NISTy?
    Merci d'avance pour vos réponses !!!!
    A bientôt

  2. #2
    ced
    ced est actuellement connecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    avril 2002
    Messages
    5 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2002
    Messages : 5 154
    Points : 18 046
    Points
    18 046

    Par défaut

    Bonjour,

    Pour commencer, il manque une parenthèse fermante à la fin de votre write.csv(...), ce qui peut expliquer le plantage.
    Ensuite, pas besoin de faire appel à la fonction c() avant le paste().
    Enfin, il vaut mieux indiquer le séparateur dans la fonction paste(), parce que par défaut c'est un espace " ", or là, ça va ajouter 2 espaces dans votre chemin, ce qui n'est pas souhaitable.

    Au final, essayez plutôt :
    Code :
    write.csv(Tableau4, file=paste("C:/Users/Charlotte/Desktop/essai/NIST/NIST",y,"/Tableau4.csv", sep = "")
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •