Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 13/02/2013, à 22:29

commande shell calcul de moyenne!! [Résolu]

Bonsoir à tous,

j'ai un fichier contenant deux colonnes par exemple :

colonne 1  colonne 2
mot1            0.555
mot2            0.657
.............................
motn            0.586


en fait, je voudrais faire la moyenne de toute la deuxième colonne par commandes shell. Faire le calcul manuellement me prend beaucoup de temps et j'ai beaucoup de fichiers à traiter.

en gros faire:

somme=0;moy=0;
for (i =1, i<n, i++) {somme=somme+colonne [i];
                             moy=som/n;}

Merci à l'avance.

Dernière modification par sab113 (Le 18/02/2013, à 18:39)

Hors ligne

#2 Le 13/02/2013, à 22:36

Re : commande shell calcul de moyenne!! [Résolu]

Voici en awk :

awk 'NR>1{v+=$2;count++}END{print v/count}' fichier.txt

bashfr.org(random);
<Clmi> j'ai fait ma JAPD aujourd'hui et on sais maintenant sur quel film de guerre il se sont basé...
<Val> lequel ?
<Clmi> "le jour le plus long"

Hors ligne

#3 Le 13/02/2013, à 22:50

Re : commande shell calcul de moyenne!! [Résolu]

Bonsoir,
Et en bash :

n=0;s=0;while read col1 col2;do ((n++));s=$(bc -l <<<"$s + $col2");done < <(tail -n +2 fichier);bc -l <<<"$s/$n"

Hors ligne

#4 Le 18/02/2013, à 18:39

Re : commande shell calcul de moyenne!! [Résolu]

Je vous remercies sputnick et pingouinux pour votre aide smile

Hors ligne

Haut de page ↑