У меня есть около 140 файлов с данными, которые я хотел бы обработать с помощью скрипта.
Файлы имеют два типа имен:
sys-time-4-16-80-15-1-1.txt
known-ratio-4-16-80-15-1-1.txt
где два последних числа меняются.Предпоследнее число занимает 1, 50, 100, 150, ..., 300, а последнее число составляет 1,2,3,4,5 ..., 10.Пример этих файлов находится в этой ссылке .
Я хотел бы написать новый файл с 3 столбцами следующим образом:
A 1stстолбец с предпоследним номером файла, т. е. 1,25,50 ... 2-й столбец со средним значением второго столбца в каждом файле sys-time-..
.Третий столбец со средним значением второго столбца в каждом файле known-ratio-..
.
Результат может содержать строку для каждой пары усредненных 2nd columns
из sys
и known
файлов:
1 mean-sys-1 mean-know-1
1 mean-sys-2 mean-know-2
.
.
1 mean-sys-10 mean-know-10
50 mean-sys-1 mean-know-1
50 mean-sys-2 mean-know-2
.
.
50 mean-sys-10 mean-know-10
100 mean-sys-1 mean-know-1
100 mean-sys-2 mean-know-2
.
.
100 mean-sys-10 mean-know-10
....
....
300 mean-sys-10 mean-know-10
, где каждая строка соответствует файлам sys
и known
с теми же двумя последними числами.Кроме того, я хотел бы скопировать в первый столбец предпоследнее число файлов.
Я знаю, как вычислить среднее значение второго столбца файла с помощью awk
:
awk '{ sum += $2; n++ } END { if (n > 0) print sum / n; }' sys-time-4-16-80-15-1-5.txt
но я не знаю, как перебрать все файлы и создать файл результатов с тремя столбцами, как указано выше.