[gawk/shell] moyenne de nombres réels
histoirede
-
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai un fichier de 5 colonnes avec des nombrtes réels, je souhaite faire une moyenne simple par ligne de ces 5 colonnes.
ma ligne de commande est :
gawk '{printf "%6.2f\n",($1+$2+$3+$4+$5)/5}' file1 > file2
gawk me fait une moyenne des valeurs entières de chacune des colonnes, au lieu de considérer la valeur réelle.
pourtant j'ai spécifié une sortie au format réel dans file2, mais peut-être faut il préciser le format des colonnes (nombres réels) dans file1?
Auriez vous une idée ??
si ce n'est pas clair, faites moi signe !
Merci d'avance
j'ai un fichier de 5 colonnes avec des nombrtes réels, je souhaite faire une moyenne simple par ligne de ces 5 colonnes.
ma ligne de commande est :
gawk '{printf "%6.2f\n",($1+$2+$3+$4+$5)/5}' file1 > file2
gawk me fait une moyenne des valeurs entières de chacune des colonnes, au lieu de considérer la valeur réelle.
pourtant j'ai spécifié une sortie au format réel dans file2, mais peut-être faut il préciser le format des colonnes (nombres réels) dans file1?
Auriez vous une idée ??
si ce n'est pas clair, faites moi signe !
Merci d'avance
Configuration: Linux Mandriva Firefox 1.0.7
5 réponses
-
essayer en divisant par /5.0
-
en faisant ça, il rajoute uniquement au résultat une décimale après la virgule
mails les $1, $2 ... sont toujours arrondis sur la valeur entière
par exemple pour une ligne où il y a 12.3, 14.5 et 15.6, la moyenne vaut 14.13
et bien, gawk me donne la moyenne de 12, 14 et 15 soit 13.66
il manque un argument à priori ... -
et avec 12,3 14,5 ?
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
il doit y avoir une variable d'environnement ou une option de gawk qui définitr les paramètres de langue, comme le format
de la date ou le séparateur point ou virgule.
set | grep LC
ça doit être
export RC_LC_NUMERIC='.'
ou export RC_LC_NUMERIC='POSIX'