valor máximo da matriz

0

Eu gostaria de encontrar o valor máximo de uma enorme matriz que tenho. Eu não preciso de nenhuma informação da posição, apenas o valor. Eu escrevi alguns comandos awk fáceis, mas eu estou lutando com este.

Suponho que posso fazer uma variável do primeiro campo para o NF e também da primeira linha até a última comparação entre si, mas como posso escrevê-lo no awk?

    
por cloudy_fog 07.10.2016 / 14:59

1 resposta

4

tente

 awk 'NR == 1 {maxi=$1;} 
      {for(i=1;i<=NF;i++) if ($i > maxi) maxi=$i ;} 
      END { print maxi;}' file

onde

  • A cláusula NR==1 é inicializada para o valor maxi da primeira linha no primeiro campo.
  • NF é definido para cada linha para o número de campos
  • Presumo que seu campo esteja em branco / separado por tabulações. Você pode usar FS="," ou FS=";" em uma cláusula BEGIN { } .
  • o comando inteiro pode ser colocado em uma única linha, eu uso várias linhas para facilitar a leitura.
por 07.10.2016 / 15:03