объединение двух файлов по общему столбцу; сохранить значение, если вариант присутствует в файле 2, и добавить 0 к тем, которых нет в файле 2

Я бы посоветовал следовать процедуре установки версии 410 в http://www.linuxandubuntu.com/home/how-to-install-latest-nvidia-drivers-in-linux, что влечет за собой

  • Удаление предыдущих драйверов с помощьюsudo apt-get purge nvidia*

  • Добавьте этот PPA:https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppaс помощью

    sudo add -apt -репозиторий ppa :графика -драйверы

  • Обновление с помощьюsudo apt-get update

  • Установить с помощьюsudo apt-get install nvidia-410

Если у вас должны быть драйверы Bleeding Edge, см.https://www.nvidia.com/download/driverResults.aspx/138279/en-us

-2
08.03.2021, 22:10
1 ответ
$ awk 'NR==FNR{an1[$3]=$5; next} {print $0, an1[$3]}' file2 file1
CHR BP  SNP CM  base AN1
10 99969507 rs35122894 0 0.23 1.000000000000000
10 99966455 rs17451447 0 1 0.678999997353345
10 99964768 rs72826281 0 0.43 0.876534244415788
10 9996313 rs111848993 0 0.01 0.003456777789882

Если, согласно вашему комментарию к вопросу, вы хотите напечатать 0, когда значения SNP отсутствуют в массиве, тогда:

awk 'NR==FNR{an1[$3]=$5; next} {print $0, ($3 in an1 ? an1[$3] : 0)}' file2 file1
2
18.03.2021, 22:26

Теги

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