«Using awk to bin values in a list of numbers» обеспечивает решение для среднего значения каждого набора из 3 точек в столбце с использованием awk.Среднее значение Awk по n данным в каждом столбце
Как можно расширить его до неопределенного количества столбцов, поддерживающих формат? Например:
2457135.564106 13.249116 13.140903 0.003615 0.003440
2457135.564604 13.250833 13.139971 0.003619 0.003438
2457135.565067 13.247932 13.135975 0.003614 0.003432
2457135.565576 13.256441 13.146996 0.003628 0.003449
2457135.566039 13.266003 13.159108 0.003644 0.003469
2457135.566514 13.271724 13.163555 0.003654 0.003476
2457135.567011 13.276248 13.166179 0.003661 0.003480
2457135.567474 13.274198 13.165396 0.003658 0.003479
2457135.567983 13.267855 13.156620 0.003647 0.003465
2457135.568446 13.263761 13.152515 0.003640 0.003458
усреднение значений каждые 5 строк, должно вывести что-то вроде
2457135.564916 13.253240 13.143976 0.003622 0.003444
2457135.567324 13.270918 13.161303 0.003652 0.003472
, где первый результат представляет собой среднее из первых 1-5 линий, а второй результат представляет собой среднее значение 6-10 строк.
не очень уверен, что вы имеете в виду. Не могли бы вы вставить желаемый результат вместе с вашими попытками? Скрипт anubhava в другом вопросе выглядит довольно красиво и легко играть с помощью – fedorqui
Используйте массив сумм и цикл 'for (i = 1; i <= NF; i ++) для управления суммированием. Для печати вам необходимо определить, какой уровень верности для исходного формата вам интересен, и как вы собираетесь определять этот формат. Что произойдет, если значение перемещается между 99999,95 и 100000,05, например? Вы просто используете разделенные пробелами числа с шестью десятичными знаками? Если это так, это легко. Если вам нужно обеспечить 7, 2, 2, 1, 1 цифры до десятичной точки, даже если цифры имеют только 5, 1, 1, 1, 1 цифры раньше, тогда вам придется работать усерднее. –