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 :

Recherche dans une table R


Sujet :

R

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut Recherche dans une table R
    Bonjour

    J'aimerais récupérer les dates présentes dans la cellule de l'image ci-dessous. Pour cela, je veux faire une recherche sur le From parce que les dates sont amenées à changer.

    Une fois le From trouvé, j'aimerais récupérer les index pour pouvoir récupérer mon texte et donc récupérer mes dates. Comment puis je réaliser cela ?

    Nom : Untitled.jpg
Affichages : 139
Taille : 5,3 Ko

    J'ai essayé avec la fonction "Which" que j'ai l'habitude d'utiliser mais elle ne fonctionne pas dans ce cas.

    J'espère que je me suis fait comprendre.

    Merci par avance.
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2017
    Messages : 34
    Points : 42
    Points
    42
    Par défaut
    Bonjour,

    Pour ma part, j'utiliserai le bout de code afin de récupérer les éléments de ma cellule suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    data.frame(var_1=c(1,2,3),
              var_2=c('From 01/01/2017 To 31/03/2018 Treaty: MED2015',
                      'From 01/01/2017 To 31/03/2018 Treaty: MED2016',
                      'From 01/01/2017 To 31/03/2018 Treaty: MED2016'))
     
    test$var_2 = as.character(test$var_2)
    test$DT_A = strsplit(test$var_2, split='[ ]')[[1]][2]
    Cordialement,
    Prog_R

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut
    Bonjour,

    Merci pour votre réponse.

    Le problème est que je ne sais ni dans quelle colonne et ni quelle ligne se trouve le From. Aussi, les colonnes changent d'un fichier à l'autre ...

    C'est un peu casse-tête, la fonction "grep" par exemple fonctionne très bien (code ci-dessous) mais à condition que je sache dans quelle colonne je veux chercher, elle me retourne l'index voulu.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    grep(pattern="From", data.new$V12, value=FALSE, fixed=TRUE)
    Sauf que je ne sais pas sur quelle colonne faire ma recherche.

    Cordialement
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2017
    Messages : 34
    Points : 42
    Points
    42
    Par défaut
    arf oui en effet, un peu casse tête.
    S'il y a plusieurs "from" sur une ligne, tu dois faire comment ?

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut
    Citation Envoyé par prog_R Voir le message
    arf oui en effet, un peu casse tête.
    S'il y a plusieurs "from" sur une ligne, tu dois faire comment ?
    Par contre, il n'y a jamais ce cas. En effet, le "From" n'apparait qu'une seule fois sur le fichier Excel pour indiquer la période.

    C'est pour cette raison que je préfère faire une recherche sur le "From".

    J'ai un bout de solution mais j'ai du mal à la concrétiser. la fonction "grep" fonctionne bien par colonne, je veux donc :
    1. parcourir les colonnes de ma table
    2. lancer le grep sur chaque colonne
    3. récupérer le numéro de colonne et le numéro de ligne dans des variables.


    La difficulté est que le grep ne renvoie pas de NA s'il ne trouve rien mais un "integer(0)", qui est vu comme un numérique, comme un integer, ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for(j in 1:ncol(data))
    {
        if (grep(pattern="From", data.new[,j], value=FALSE, fixed=TRUE)!=integer(0))
          c <- j
        else
          c <- FALSE
    }
    j'espère que tu pourras m'aider.

    Cordialement
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut
    C'est bon ! J'ai trouvé la solution à mon problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    for(j in 1:ncol(data.new))
    {
        if (isTRUE(grep(pattern="From", data.new[,j], value=FALSE, fixed=TRUE)!="integer(0)"))
           col <- j
    }
    row <- grep(pattern="From", data.new[,col], value=FALSE, fixed=TRUE)
    data.new[row,col]
    MERCI
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2017
    Messages : 34
    Points : 42
    Points
    42
    Par défaut
    Ah bien joué ! j'efface le morceau de code alors


    Prog_R

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

Discussions similaires

  1. [LibreOffice][Tableur] fixer une formule avec suppression de colonne.
    Par josmiley dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 29/10/2018, 19h37
  2. Suppressions colonnes avec AWK
    Par chavi dans le forum Shell et commandes GNU
    Réponses: 25
    Dernier message: 21/10/2014, 12h32
  3. [Toutes versions] suppression de colonnes et feuilles sur excel avec VBA
    Par info009 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/05/2014, 16h21
  4. [VBA-E] Suppression des colonnes avec condition
    Par desdenova dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2007, 13h39
  5. maj d'1 colonne avec la date du jour lors de l'INSERT
    Par Celina dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 18/12/2003, 15h03

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