AWKの使用新しい "id"が表示されたときにナンバリングが再開される点を除いて、 3列目($ 3)。 '{print $0 "\t" $3"-exon-"NR}'
番号エクソン1から20 フィールド$ 3(つまり、497097、19888、20671、18777、および58175)の新しいIDごとに番号付けを再開したい。このファイルの場合、すべてのID番号は隣接する行にあります。私は$ 6をコードしようとしている書式の例を書いています。私の実際のファイルは25万行以上で、さらに多くのフィールドを持っています。私はこれが本当に簡単だと思っていますが、私は正しい解決策を見つけることができませんでした。
ありがとうございます!
chr gene id start stop exon_number
1 Xkr4 497097 3216021 3216967 497097-exon-1
1 Xkr4 497097 3421701 3421900 497097-exon-2
1 Xkr4 497097 3670551 3671347 497097-exon-3
1 Rp1 19888 4344599 4350090 19888-exon-1
1 Rp1 19888 4351909 4352080 19888-exon-2
1 Rp1 19888 4352201 4352824 19888-exon-3
1 Sox17 20671 4491715 4492667 20671-exon-1
1 Sox17 20671 4493099 4493405 20671-exon-2
1 Lypla1 18777 4807913 4807981 18777-exon-1
1 Lypla1 18777 4808454 4808485 18777-exon-2
1 Lypla1 18777 4828583 4828648 18777-exon-3
1 Lypla1 18777 4830267 4830314 18777-exon-4
1 Lypla1 18777 4832310 4832380 18777-exon-5
1 Lypla1 18777 4837000 4837073 18777-exon-6
1 Lypla1 18777 4839386 4839487 18777-exon-7
1 Lypla1 18777 4840955 4841131 18777-exon-8
1 Lypla1 18777 4844962 4845015 18777-exon-9
1 Rgs20 58175 4910473 4910661 58175-exon-1
1 Rgs20 58175 4912313 4912547 58175-exon-2
1 Rgs20 58175 4916896 4916979 58175-exon-3
あなたの問題を解決するための最良の試みを示すためにQを更新してください。これは、そのようなタスクに 'awk'を使う方法を理解するのを助ける唯一の方法です。 (はい、これは非常に簡単に解決するはずです)。しかし、 '497097'はファイルの後ろに現れますか、ここに表示されているように常にレコードは一緒にグループ化されます。最後に、 '497097'の' $ 3'はありませんか?コメントで返信するのではなく、Qを更新してください。がんばろう。 – shellter
スタックオーバーフローへようこそ、期待した出力をコードタグで表示していれば、最初のサンプル入力を表示してからコードタグに予想される出力を表示できるので、クエリをより理解できるようになります。ありがとう、知識と喜びを共有し続ける! – RavinderSingh13
あなたは正しい "id"が$ 3であることを申し訳ありません。また、idレコードはグループ化されており、ファイルのさらに下には繰り返されません。私はこれらの問題の両方を反映するようにQを更新しました。ありがとうございました。 – John