Dado un archivo de datos separados por tabulaciones (u otro separador), ¿cómo calcularía la media de una columna?
Lástima que no existan binarios simples que realicen operaciones matemáticas simples sobre ese tipo de archivos.
Respuesta1
awk -F'\t' '{ sum += $1 } END { print sum / NR }'
Aquí $1
está la primera \t
columna separada por ab.
Respuesta2
Si tienes R instalado también puedes usar:
Rscript -e "(mean(read.table(\"file.tab\")))"
También puedes cambiar la función (media) a otras funciones estadísticas, por ejemplo:
Rscript -e "(mean(read.table(\"file.tab\")))"
Rscript -e "(sd(read.table(\"file.tab\")))"
Rscript -e "(summary(read.table(\"file.tab\")))"
Si desea especificar la columna, digamos, use la columna 3, entonces use la notación [,3]
Rscript -e "(sum(read.table(\"file\")[,3]))"
¡Disfrutar!