次のようにタブ区切りのファイルがあります。
gene v1 v2 v3 v4
g1 NA NA NA NA
g2 NA NA 2 3
g3 NA NA NA NA
g4 1 2 3 2
1行あたりのフィールド数は固定され、同じです。上記のファイルから2列から最後の列まで、各行のすべてのフィールドがNAである行を削除したいと思います。その後、出力は次のようになります。
gene v1 v2 v3 v4
g2 NA NA 2 3
g4 1 2 3 2
ベストアンサー1
そしてawk
:
awk '{ for (i=2;i<=NF;i++) if ($i!="NA"){ print; break } }' file
2番目のフィールドから始めてフィールドを繰り返し、NA
含まれていないフィールドが見つかった場合はその行を印刷します。その後、サイクルを終了します。