Bio*_*o21 2 awk text-processing sed
我有一个20000探针的列表,有没有办法使用sed/awk提取每个探针的前三行/出现?
Example of dataset:
Probe1 A GTTAGAGGAGGTGGAAGAGC
Probe1 B CTGAGGTCGGGACGGAGCAC
Probe1 C GATGTAGGCGGTTGGCGTGG
Probe1 D GTTGGCGAAGTCACATCTAG
Probe1 E CATGTCGCCGACTCCGTCGA
Probe1 F GTGATGTTCTGAGTACATAG
Probe3 A GATTGTAGGTTTCCTGCCAG
Probe3 L ACCCAGCCAGGGGAAAACCA
Probe3 Z GGAGATGTAGGCGGTTGGCG
Probe3 Y GGAGATGTAGGCCTTAAAAA
Probe3 D GATTGTAGGGGTCCTGCCAG
Run Code Online (Sandbox Code Playgroud)
期望的输出:
Probe1 A GTTAGAGGAGGTGGAAGAGC
Probe1 B CTGAGGTCGGGACGGAGCAC
Probe1 C GATGTAGGCGGTTGGCGTGG
Probe3 A GATTGTAGGTTTCCTGCCAG
Probe3 L ACCCAGCCAGGGGAAAACCA
Probe3 Z GGAGATGTAGGCGGTTGGCG
Run Code Online (Sandbox Code Playgroud)
awk 救援!
$ awk '++a[$1]<4' file
Run Code Online (Sandbox Code Playgroud)
删除空行
$ awk '++a[$1]<4 && NF' file
Run Code Online (Sandbox Code Playgroud)