$ awk '{ sum[$1] += $2; count[$1] += 1 } END { for ( key in count ) { print key, sum[key] / count[key] } }' input
Sample_A 150
Sample_B 200
Чтобы получить среднее значение, вам нужны две вещи: :количество усредняемых объектов и сумма этих значений. Мы используем массив count
для первого и массив sum
для второго. Ключи в каждом массиве назначаются первому столбцу в вашем файле данных.
Затем мы используем предложение END
после сбора данных, чтобы просмотреть каждый массив, получить суммы и подсчеты, разделить одно на другое и отобразить результаты.
Сценарий awk
, переформатированный таким образом, чтобы не все располагалось на одной строке, выглядит следующим образом:
{
sum[$1] += $2
count[$1] += 1
}
END {
for (key in count) {
print key, sum[key] / count[key]
}
}
Ядро Linux не имеет стабильного ABI или даже внутреннего API , а это означает, что предпринимается очень мало усилий для сохранения обратной совместимости интерфейсов, используемых внешними модулями.
лот изменился между 2.6.32 и 4.18; получение совместимого с 2.6.32 -модуля для сборки ядра 4.18 потребует значительной работы по портированию.