Si el archivo no es muy grande, se puede procesar fácilmente con un for (si es grande también se puede procesar, pero quizás valga la pena buscar otras formas además de la que voy a sugerirte)
No hay control de errores y probablemente se pueda mejorar mucho, pero en principio es la idea que se me ocurre:
Código python:
Ver originalarchivo = open("tuarchivo")
lista_datos = []
# leo hasta que encuentro $PEAKS
while not archivo.readline().startswith("$PEAKS:"):
pass
# la siguiente línea es la que tiene el "control de ciclo"
num_lineas = int( archivo.readline() )
# ahora leo las siguientes num_lineas líneas del archivo
for i in xrange(0, num_lineas):
datos = archivo.readline().split(" ")
lista_datos.append( (datos[0], datos[3]) )
# por último, leer la última línea
for linea in archivo:
pass
# obtengo el tercer campo de la línea
divisor = linea.split(" ")[3]
# genero la salida:
for (col1, valor) in lista_datos:
print "%s, %s" % col1, (valor / divisor)
Sobre tu archivo de ejemplo, la salida que me da este programa es
Código:
6 - 0.0
19 - 0.00235797929394
20 - 0.00877835558747
22 - 0.00463617733358
Saludos.