32 votos

Herramienta de línea de comandos para calcular las estadísticas básicas del flujo de valores

¿Existe alguna herramienta de línea de comandos que acepte el flujo de números (en formato ascii) desde la entrada estándar y proporcione las estadísticas descriptivas básicas de este flujo, como mínimo, máximo, media, mediana, RMS, cuantiles, etc.? La salida es bienvenida para ser parseable por el siguiente comando en la cadena de línea de comandos. El entorno de trabajo es Linux, pero otras opciones son bienvenidas.

1 votos

Le recomiendo que eche un vistazo a |STAT . Es un software bastante antiguo, pero es muy conveniente para estas cosas. También hay pyp y varios otros Herramientas Un*x.

0 votos

@chl Enlace ISTAT roto. ¿Pueden actualizarlo o convertirlo en una respuesta, por favor?

1 votos

@Masi Sí, parece que la página ya no existe. Aquí hay una enlace actualizado .

1voto

emaillenin Puntos 6096

Me encontré con este viejo hilo buscando otra cosa. Quería lo mismo, no podía encontrar nada simple, así que lo hizo en perl, bastante trivial, pero lo uso varias veces al día: http://moo.nac.uci.edu/~hjm/stats

ejemplo:

 $ ls -l | scut -f=4 | stats                
Sum       9702066453
Number    501
Mean      19365402.1017964
Median    4451
Mode      4096  
NModes    15
Min       0
Max       2019645440
Range     2019645440
Variance  1.96315423371944e+16
Std_Dev   140112605.91822
SEM       6259769.58393047
Skew      10.2405932543676
Std_Skew  93.5768354979843
Kurtosis  117.69005473429

(scut es una versión más lenta, pero posiblemente más fácil de cortar): http://moo.nac.uci.edu/~hjm/scut descrito: http://moo.nac.uci.edu/~hjm/scut_cols_HOWTO.html

1voto

Cobra Kai Dojo Puntos 427

Otra herramienta: tsv-summarize de Utilidades TSV de eBay . Soporta muchos de los estadísticos de resumen básicos, como el mínimo, el máximo, la media, la mediana, los cuantiles, la desviación estándar, la MAD y algunos más. Está pensado para grandes conjuntos de datos y admite múltiples campos y la agrupación por clave. La salida está separada por tabulaciones. Un ejemplo para la secuencia de números 1 a 1000, uno por línea:

$ seq 1000 | tsv-summarize --min 1 --max 1 --median 1 --sum 1
1   1000    500.5   500500

Las cabeceras se generan normalmente a partir de una línea de cabecera en la entrada. Si la entrada no tiene cabecera, se puede añadir una utilizando la función -w interruptor:

$ seq 1000 | tsv-summarize -w --min 1 --max 1 --median 1 --sum 1
field1_min  field1_max  field1_median   field1_sum
1   1000    500.5   500500

Descargo de responsabilidad: soy el autor.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X