Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

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

sab113

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, à 17:39)

Hors ligne

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

sputnick

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

Voici en awk :

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

On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

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

pingouinux

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, à 17:39

sab113

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

Je vous remercies sputnick et pingouinux pour votre aide smile

Hors ligne