Как получить частоту минорного аллеля?

Вы можете использовать команду:

awk -F'[-|]'  -v date="20190405" '$1 == date && $2>180000 && $2<192000' file_name | grep "End success file transfer /app/reception/FILENAME.dat to HOSTX"

Вывод команды awkбудет:

 20190405 - 180050 | INFO   | FILE_SEND.sh    |          | FILENAME.dat                    | 1800498307000 | End success file transfer /app/reception/FILENAME.dat to HOSTX

С использованием переменной даты:

awk -F'[-|]'  -v date="$(date +%Y%m%d)" '$1 == date && $2>180000 && $2<192000' filename
-1
06.05.2020, 11:31
1 ответ

Возможно, вы могли бы использовать

awk 'NR > 1 { maf = ($1 > 0.5 ? 1 - $1 : $1); print maf }' file

или просто

awk 'NR > 1 { print ($1 > 0.5 ? 1 - $1 : $1) }' file

Или, используя вычисление минимума $1и 1 - $1(, вawk):

нет функции min()
awk 'NR > 1 { print ($1 < 1 - $1 ? $1 : 1 - $1) }' file

Выражение ($1 > 0.5 ? 1 - $1 : $1)приведет к 1 - $1, если $1 > 0.5, иначе оно приведет к $1. Точно так же ($1 < 1 - $1 ? $1 : 1 - $1)приведет к $1, если $1 < 1 - $1является истинным , и в 1 - $1в противном случае.

Для заданных данных это даст

0.0044
0.0018
0.3920
3
28.04.2021, 23:16

Теги

Похожие вопросы