2022/03/04

Linux memo

備忘録

awk commandで2つのファイルのIDでVlookupのようなことを行いたい。for文を使わずに。

fileA ID  file B ID(一部)

File Aに FileBのIDと一致する行があれば、その行のstatusを9に変更する


ソートが必要かは不明だったが、ソートして見た

## 2 は2列目の項目でソート

sork -k 2 pheno.txt > pheno.s.txt 


## 一致しているIDがあればフラグを書き換える。

awk 'FNR==NR{keys[$2];next} if ($2 in keys) print $2, 9; else print $2 $3}' fileB.txt fileA.txt > update.txt


これができるようになるのに半日かかった... 


plink --bfile mydata --make-pheno p1.list * --assoc

pl.listに乗っている全てのIDにおいてcaseと指定する