IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Ouverture de fichiers en fonction de leur format


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 37
    Par défaut Ouverture de fichiers en fonction de leur format
    Re-bonjour à tous,

    J'ai un dossier avec différents fichiers de formats différents.
    je souhaite que R n'ouvre que les fichiers du format qui m'intéresse (ici. tif) et pas les autres.
    J'ai cherché et j'ai trouvé une solution mais celle-ci ne fonctionne pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    fich=list.files("C:/Users/.../Desktop/Nouveau dossier")
    m=0
    for (i in 1:length(fich)){
    if (str_sub(fich[i],-4)== ".TIF")
    {m=1}
    print(m)
    }
    En effet, je pense qu'il n'arrive pas à comparer (str_sub(fich[i],-4) à ".TIF".
    Pourquoi et comment y remédier ?
    Sinon, si quelqu'un a une autre solution, je suis preneuse.
    D'avance merci.

    Charlotte

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

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

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

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 059
    Par défaut
    Bonjour,

    La fonction dir() est plus adaptée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fich=dir("C:/Users/.../Desktop/Nouveau dossier/", "*.TIF")
    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

  3. #3
    Membre éprouvé
    Homme Profil pro
    Analyste
    Inscrit en
    Février 2012
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste

    Informations forums :
    Inscription : Février 2012
    Messages : 62
    Par défaut
    Bonjour,

    Il existe un paramètre pattern pour la fonction list.files() qui permet de spécifier une extension particulière (une chaîne de caractères tout court en fait).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    setwd(choose.dir())#on se place dans un répertoire
    ex_liste <- list.files(".")#on liste les fichiers sans spécifier de contrainte
    ex_liste#le dossier contient 8 fichiers,  txt et 7 avi
     
    [1] "Doc txt.txt"   "Épisode 1.avi" "Épisode 2.avi" "Épisode 3.avi"
    [5] "Épisode 4.avi" "Épisode 5.avi" "Épisode 6.avi" "Épisode 7.avi"
     
    ex_liste <- list.files(".",pattern=".avi")#on recherche uniquement les fichiers au format .avi dans ce dossier
    ex_liste#on retrouve les 7 fichiers, mais le doc txt n'est pas pris en compte
     
    [1] "Épisode 1.avi" "Épisode 2.avi" "Épisode 3.avi" "Épisode 4.avi"
    [5] "Épisode 5.avi" "Épisode 6.avi" "Épisode 7.avi"
     
    ex_liste <- list.files(".",pattern="7")#on recherche les fichiers qui ont un 7 dans leur nom
    ex_liste#un seul fichier
     
    [1] "Épisode 7.avi"
    On peut utiliser des expressions régulières en guise de paramètre, cela peut s'avérer utile. Il faut aussi prendre gare à la casse, ".TIF" ne vaut pas ".tif".

    En espérant que cela fonctionne aussi chez vous, à bientôt.

    Guinue

  4. #4
    Membre actif
    Femme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 37
    Par défaut
    Merci à tous les 2 pour ces réponses !!

    Et si les objets qui nous intéressent dans le dossier X sont des sous dossiers, comment lui indiquer que ce sont ces "objets-là" qu'il doit prendre en compte ?

    Il n'y pas de . quelquechose (comme par exemple .jpg ou .avi) pour un dossier. Donc comment lui dire de ne prendre en compte que les fichiers où il n'y a pas d'extension ?

    Merci encore et a bientôt,

    Charlotte

  5. #5
    ced
    ced est déconnecté
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 059
    Par défaut
    Dans ce cas, c'est la fonction list.dirs(path = ".", full.names = TRUE, recursive = TRUE) qu'il faut utiliser, et pas list.files().
    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

  6. #6
    Membre actif
    Femme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 37
    Par défaut
    Merci beaucoup !!
    A+

    Cha.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Supprimer des fichiers en fonction de leur date
    Par charlix dans le forum Scripts/Batch
    Réponses: 55
    Dernier message: 05/10/2015, 17h18
  2. Réponses: 2
    Dernier message: 21/08/2009, 12h18
  3. écrire une liste de fichiers en fonction de leur extension
    Par seb.garcia dans le forum Général Python
    Réponses: 5
    Dernier message: 10/01/2009, 15h06
  4. récupération de fichier en fonction de leur contenu
    Par Ted37 dans le forum Scripts/Batch
    Réponses: 35
    Dernier message: 31/07/2008, 16h43
  5. Récuperer des fichiers en fonction de leur ancienneté
    Par julien000 dans le forum Langage
    Réponses: 3
    Dernier message: 24/07/2006, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo