¿Cómo dividir iterativamente los elementos de una columna por un elemento de un elemento en otra columna?
Por ejemplo, entrada:
2 2
2.2
4
44
Rendimiento esperado:
1
1.1
2
22
La división estándar awk '{print $1/$2}' Input > Output
no funciona (ya que se itera a través de todos $2
los elementos que no existen)
Respuesta1
Para obtener el divisor, debe considerar únicamente el valor de la primera fila de la segunda columna. Puedes usar FNR
para esto. En awk, FNR
se refiere al número de registro (prácticamente el número de línea) en el archivo actual. Almacene el divisor leyendo la primera fila de la segunda columna y divida los elementos de la primera columna por el valor almacenado.
awk 'FNR==1 {d=$2} {print $1/d}' Input > Output