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 :

créer une suite avec un format précis (préfixe et longeur fixe)


Sujet :

R

  1. #1
    Candidat au Club
    Femme Profil pro
    bio-informaticienne
    Inscrit en
    Septembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : bio-informaticienne
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut créer une suite avec un format précis (préfixe et longeur fixe)
    Bonjour,
    Je désire créer sous R une suite de nombre avec un préfixe, mais je tourne en rond car je ne trouve pas comment formater correctement les nombres.

    Ce que je désire est une suite dont le préfixe est Medtr_v1_
    et suivi des n° de 000001 à 102124.

    Ce qui donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Medtr_v1_000001
    Medtr_v1_000002
    Medtr_v1_000003
    ....
    Medtr_v1_102123
    Medtr_v1_102124
    Pouvez vous m'aider, s'il vous plaît?
    Merci
    Sandra

  2. #2
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Points : 2 673
    Points
    2 673
    Par défaut
    Bonjour,

    Si j'ai bien compris votre problématique, je pense que la fonction "paste" peut faire l'affaire, mais attention au fait que dans R : 000001 = 1 , donc il y a des petites adaptations à faire si vous souhaitez impérativement que les numéros soient sur 6 chiffres.
    Pour l'aide de la fonction :

    Et n'hésitez pas à revenir si vous n'arrivez pas à vous en sortir ou si vous avez plus de questions.
    Bonne continuation


    Cordialement,

    A.D.

    Forum R
    Fournir le code utilisé (pensez aux balises code !), les packages nécessaires, ainsi qu'un court mais représentatif extrait du jeu de données et les éventuels messages d'erreur.
    Recherche d'informations concernant R : RSiteSearch / tutoriels : http://r.developpez.com/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

  3. #3
    Membre expert
    Avatar de pitipoisson
    Homme Profil pro
    Chercheur
    Inscrit en
    Septembre 2006
    Messages
    1 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 942
    Points : 3 378
    Points
    3 378
    Par défaut
    Bonjour,

    Tu peux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x <- paste("Medtr_v1_", formatC(1:102124, width=6, flag="0"), sep="")
    Qui donne bien ce que tu souhaites
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    > head(x)
    [1] "Medtr_v1_000001" "Medtr_v1_000002" "Medtr_v1_000003" "Medtr_v1_000004"
    [5] "Medtr_v1_000005" "Medtr_v1_000006"
    > tail(x)
    [1] "Medtr_v1_102119" "Medtr_v1_102120" "Medtr_v1_102121" "Medtr_v1_102122"
    [5] "Medtr_v1_102123" "Medtr_v1_102124"
    >
    Forum LaTeX : pour des réponses rapides et appropriées, pensez à poster un
    ECM = Exemple (reproduit le problème) Complet (document compilable) Minimal (ne postez pas votre thèse !)

    Une solution vous convient ? N'oubliez pas le tag


    )><))))°>

  4. #4
    Candidat au Club
    Femme Profil pro
    bio-informaticienne
    Inscrit en
    Septembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : bio-informaticienne
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Vous avez touché du doigt mon problème : comment afficher 000001 et non 1?

    J'ai essayé avec format(widht=6) mais je récupère des espaces devant le 1 et non des 0.
    Comment faire pour que le formatage de mes nombres me mette des 0?

    On ne peut pas dire que l'aide de ?format soit très explicite... et sur le net, je ne trouve que des solutions pour les dates, mais rien pour les nombres.

    Ensuite, pas de problème, j’utilise souvent la fonction paste().

    Sandra

  5. #5
    Candidat au Club
    Femme Profil pro
    bio-informaticienne
    Inscrit en
    Septembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : bio-informaticienne
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2011
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pitipoisson, c'est exactement ce qu'il me fallait.
    Il ne me manquait que le flag="0"

    Sandra

  6. #6
    Membre averti
    Femme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    272
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 272
    Points : 417
    Points
    417
    Par défaut Autre solution
    Bonjour,

    j'arrive après la bataille mais je propose:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x <- paste("Medtr_v1_", sprintf("%06g", seq(1,102124)), sep="")
    Bonne journée

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

Discussions similaires

  1. Créer une vue avec une image au format postscript *.eps
    Par pobsteta dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 22/11/2007, 15h12
  2. Réponses: 4
    Dernier message: 09/02/2005, 10h44
  3. Créer une grille avec centage
    Par lil_jam63 dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 16/08/2004, 16h21
  4. [Image]Créer une image avec JAVA 1.1
    Par burno dans le forum 2D
    Réponses: 4
    Dernier message: 11/08/2004, 09h19

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