[risolto]Fare la media di un file con numeri

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
steff
Moderatore Globale
Moderatore Globale
Messaggi: 40354
Iscrizione: domenica 18 febbraio 2007, 19:48
Desktop: LXQt+labwc
Distribuzione: Arch; Debian; Ubuntu Server
Sesso: Maschile
Località: Toscana
Contatti:

[risolto]Fare la media di un file con numeri

Messaggio da steff »

Ho uno script che mi misura la connessione ogni 20 min e mi produce

Codice: Seleziona tutto

$ cat connessione.log -n
     1  5.23
     2  3.10
     3  3.43
     4  3.54
     5  3.92
     6  3.02
     7  4.45
     8  2.04
....
....
Se qualcuno mi butta un comando che fa la somma dei valori e la divide per il numero di righe totali sarei felice :)
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: Fare la media di un file con numeri

Messaggio da Zoff »

Codice: Seleziona tutto

awk '{ sum += $1; n++ } END { if (n > 0) print sum / n; }' connessione.log
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
steff
Moderatore Globale
Moderatore Globale
Messaggi: 40354
Iscrizione: domenica 18 febbraio 2007, 19:48
Desktop: LXQt+labwc
Distribuzione: Arch; Debian; Ubuntu Server
Sesso: Maschile
Località: Toscana
Contatti:

Re: Fare la media di un file con numeri

Messaggio da steff »

E grazie :)
Ora dovrei chiamarli e dire che la velocità media è

Codice: Seleziona tutto

awk '{ sum += $1; n++ } END { if (n > 0) print sum / n; }' connessione.log
3.61636
Ma il problema è questo è la media e che ci sono questi momenti con 0.23...
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8242
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: Fare la media di un file con numeri

Messaggio da crap0101 »

steff [url=http://forum.ubuntu-it.org/viewtopic.php?p=4889412#p4889412][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:E grazie :)
Ora dovrei chiamarli e dire che la velocità media è

Codice: Seleziona tutto

awk '{ sum += $1; n++ } END { if (n > 0) print sum / n; }' connessione.log
3.61636
Ma il problema è questo è la media e che ci sono questi momenti con 0.23...
Non ho capito, cosa sono questi "momenti"? valori della seconda colonna? e perchè sono un problema?

Rispetto a quanto scritto da Zoff penso che dovresti fare la somma sul secondo campo, non il primo (che mi sembrano numeri sequenziali indicanti il numero della tentata connesione) e, btw, si può modificare in

Codice: Seleziona tutto

awk '{ sum += $1 } END { if (NR) print sum / NR }'
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: [risolto]Fare la media di un file con numeri

Messaggio da Zoff »

Il primo numero è dato dal parametro -n dato a cat, non è presente nel file
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Avatar utente
steff
Moderatore Globale
Moderatore Globale
Messaggi: 40354
Iscrizione: domenica 18 febbraio 2007, 19:48
Desktop: LXQt+labwc
Distribuzione: Arch; Debian; Ubuntu Server
Sesso: Maschile
Località: Toscana
Contatti:

Re: [risolto]Fare la media di un file con numeri

Messaggio da steff »

Non ho capito, cosa sono questi "momenti"? valori della seconda colonna? e perchè sono un problema?
I momenti di connessione con 0,23mbit/s è sono un problema non per lo script ma per i nervi ;)
Hai fatto un backup oggi? Ieri?? Quando???
La Documentazione da consultare e la FAQ sul uso del forum
Sistemi: LXQt - semplice, modulare e configurabile + *ubuntu in Vbox
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8242
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: [risolto]Fare la media di un file con numeri

Messaggio da crap0101 »

ah già! non me n'ero accorto
steff ha scritto:
Non ho capito, cosa sono questi "momenti"? valori della seconda colonna? e perchè sono un problema?
I momenti di connessione con 0,23mbit/s è sono un problema non per lo script ma per i nervi ;)
:-D chiaro
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti