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

Langage Perl Discussion :

tri, clé unique et redondance


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 142
    Par défaut tri, clé unique et redondance
    Bonjour,

    J'ai un fichier d'entrée
    aaa 127 132
    aaa 48 52
    ccc 15 0
    bbb 25 40
    aaa 127 18
    bbb 25 40

    et je souhaiterai obtenir un fichier final

    aaa 127 132
    aaa 25 40
    ccc 15 0


    Je ne souhaite pas de redondance et c'est la colonne 3 qui diffèrent entre 2 éléments identiques!!


    Voiçi mon code :
    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
    18
    19
    20
    21
    22
     
    ###tri selon la colonne 3
    my @data = <F>;
    my @sorted_data = map {$_->[2]}
                      sort {$a->[0] cmp $b->[0] || $a->[1] <=> $b->[1]}
                      map {my ($f1, $f2) = (split /\t/, $_)[0, 2]; [$f1, $f2, $_]}  @data;
    #print @sorted_data;
     
    foreach (@sorted_data) {
            chomp $_;
            my ($a,$b,$c) = (split /\t/,$_); # a garder
     
    	my @fields = "$a"."\t"."$b";
    	#print "$ligne\n";
    	my $key = join "\t", @fields;
        	push @tableau, [ @fields ] if !$line_count{$key}++; 
    }
    print Dumper @tableau;
     
    for my $data (@tableau) {
       	print "@$data\n";
    }
    Merci pour votre aide

  2. #2
    Rédacteur/Modérateur

    Avatar de Lolo78
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2012
    Messages
    3 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 612
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pontarose Voir le message
    Bonjour,

    J'ai un fichier d'entrée
    aaa 127 132
    aaa 48 52
    ccc 15 0
    bbb 25 40
    aaa 127 18
    bbb 25 40

    et je souhaiterai obtenir un fichier final

    aaa 127 132
    aaa 25 40
    ccc 15 0
    Bonjour,

    je suis désolé mais je ne comprends pas comment tu obtiens aaa 25 40 en sortie alors que cette ligne ne figure pas dans le fichier en entrée.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 142
    Par défaut
    Bonjour,
    Désolé c'est une erreur de ma part, j'obtiens bien bbb 25 40

  4. #4
    Rédacteur/Modérateur

    Avatar de Lolo78
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2012
    Messages
    3 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 612
    Billets dans le blog
    1
    Par défaut
    OK, c'est déjà plus clair, mais sur quelles bases tu ne gardes que trois lignes du fichier en entrée et élimines les autres?

Discussions similaires

  1. Tri Excel + masquer redondance
    Par Phenx dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 01/07/2021, 11h48
  2. [XPATH 2.0] tri et unique dans xmlpath
    Par dada2000 dans le forum XSL/XSLT/XPATH
    Réponses: 0
    Dernier message: 31/10/2012, 17h07
  3. DISTINCT pour faire un tri unique
    Par Danos dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 22/02/2008, 23h51
  4. [MySQL] Tri sur champ au format date - uniquement mois/année
    Par skippy86 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/01/2007, 12h27
  5. algorithme de tri tableau :afficher que les éléments unique
    Par sofiane61 dans le forum Algorithmes et structures de données
    Réponses: 19
    Dernier message: 31/03/2005, 20h50

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