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

Shell et commandes GNU Discussion :

Caluler la fréquence et l'afficher sans supprimer les différentes occurrences


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Par défaut Caluler la fréquence et l'afficher sans supprimer les différentes occurrences
    Bonjour,

    j'ai un fichier de la forme suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    voitures N voiture
    mangeait V manger
    pommes N pomme
    mangeons V manger
    pomme N pomme
    j'aimerais calculer la fréquence de chaque mot de la troisième colonne et écrire cette fréquence sur une quatrième colonne pour obtenir ceci (avec l'exemple ci-dessus):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    voitures N voiture 1
    mangeait V manger 2
    pommes N pomme 2
    mangeons V manger 2
    pomme N pomme 2
    J'ai cette commande qui calcule la fréquence mais ne garde qu'une occurrence de chaque mot.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk '{print $3}' fichier.txt | sort | uniq -c
    Merci.

  2. #2
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    Ça doit le faire :
    http://www.shellunix.com/awk.html
    http://lea-linux.org/cached/index/Dev-awk.html
    http://www.delorie.com/gnu/docs/gawk/gawk.1.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    awk '
    {
    	while (getline < FILENAME > 0) {
    		col3[$3]++
    		# print "* "$3" = "col3[$3]
    	}
    	close (FILENAME)
    	while (getline < FILENAME > 0) {
    		print $0, col3[$3]
    	}
    	exit
    } ' fichier.txt

  3. #3
    Membre confirmé Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Par défaut
    Bonjour BlaireauOne,

    ton script marche niquel . Je vais maintenant l'analyser pour voir comment il fonctionne parce que là comme ça je vois pas trop.

    Merci.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/09/2011, 17h14
  2. Supprimer les espaces sans supprimer les 0
    Par marco858 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 12/05/2011, 16h35
  3. HELP : Import tables sans supprimer les lignes
    Par neh75 dans le forum Import/Export
    Réponses: 6
    Dernier message: 31/07/2008, 15h33
  4. supprimer fils sans supprimer les sous_fils
    Par calitom dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/10/2007, 14h46
  5. [Requête/SQL]Mise à jour table sans supprimer les relations
    Par atlantideD dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 13/04/2007, 14h53

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