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

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 52
    Points : 44
    Points
    44

    Par défaut Nommer des tables automatiquement

    Bonjour,

    Je cherche une moyen de nommer des tables automatiquement à partir de valeurs se trouvant dans une autre table.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    c <- nrow(TableB)
     
    for (i in 1:c) {
      i <- tableA[tableA$var1 %in% (tableB[i,]),]
    }
    D'avance merci

  2. #2
    Membre averti
    Inscrit en
    février 2011
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : février 2011
    Messages : 184
    Points : 390
    Points
    390

    Par défaut

    Bonjour,

    regarde du côté de la fonction assign.

    cdlt

  3. #3
    Membre actif
    Homme Profil pro
    Data scientist
    Inscrit en
    février 2017
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data scientist
    Secteur : Conseil

    Informations forums :
    Inscription : février 2017
    Messages : 102
    Points : 200
    Points
    200

    Par défaut la fonction assign

    Bonjour,

    Voilà une alternative.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    nom_table = data.frame( nom = paste( "tab" , 1:10, sep = "_")) #table qui contient un variable nom des tables. 
     
    for ( i in 1:10){assign( as.character(nom_table$nom[i]) , data.frame( X = rep(i, 10)))} #assigner chaque nom à une table.
    Cordialement,

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 52
    Points : 44
    Points
    44

    Par défaut Nommer des tables "automatiquement"

    Bonjour,

    Merci pour vos retours. J'ai bien essayé quelque chose à partir de vos indications :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (i in 1:(nrow(liste_epci))){(assign(as.character(liste_epci$EPCI[i]), sqldf("select * from exp_commune where EPCI like 'liste_epci$EPCI[i]'")))}
    R génère bien i tables mais elles sont vides...

    La table liste_epci contient une colonne (variable EPCI) contenant des codes (caractères).
    La table exp_commune contient une vingtaine de variable dont la variable EPCI également (caractères).

    L'objectif de ce code est de générer une table par code EPCI contenant les 20 variables de la table exp_commune filtrées par le code EPCI.
    Le code EPCI a deux rôles : 1/ de nommer la table 2/ de filtrer les données.

    Merci pour votre aide,

    Nicolas

  5. #5
    Membre actif
    Homme Profil pro
    Data scientist
    Inscrit en
    février 2017
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data scientist
    Secteur : Conseil

    Informations forums :
    Inscription : février 2017
    Messages : 102
    Points : 200
    Points
    200

    Par défaut

    Bonjour,

    C'est normal que ca marche pas , parce qu'il cherche plutôt la chaine de caractère 'liste_epci$EPCI[i]' qui n'existe pas dans ton fichier. et du coup génère des tables vides.

    Essaye plutôt la fonction subset de R

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    for (i in 1:(nrow(liste_epci)))
      {assign(as.character(liste_epci$EPCI[i]), subset(exp_commune , exp_commune$EPCI == liste_epci$EPCI[i]))}
    Cordialement,

    Marouane

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    novembre 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : novembre 2006
    Messages : 52
    Points : 44
    Points
    44

    Par défaut Nommer des tables "automatiquement" : fin

    Re-

    merci pour cette rapidité !
    çà fonctionne...génial !

    Bon après-midi,

    Nicolas

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

Discussions similaires

  1. [AC-2003] Importer des formulaires/Lier des tables automatiquement
    Par tarnx dans le forum VBA Access
    Réponses: 5
    Dernier message: 10/09/2010, 17h18
  2. Réponses: 3
    Dernier message: 09/07/2010, 09h51
  3. Travailler avec des tables automatiques
    Par SonnyFab dans le forum MS SQL-Server
    Réponses: 3
    Dernier message: 02/07/2010, 13h02
  4. Travailler avec des tables automatiques
    Par SonnyFab dans le forum Langage SQL
    Réponses: 0
    Dernier message: 29/06/2010, 15h37
  5. supprimer lignes des tables automatiquement
    Par fangriz dans le forum JDBC
    Réponses: 8
    Dernier message: 24/08/2009, 01h35

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