Removing low frequency sequences

If I have a file with the following information

And I would like to remove all the sequences with Freq less than 3, so I end up having the following file:

I am currently using awk to accomplish this task but I am not getting the results I actually want.
Any help will be greatly appreciated.

awk '/^>/{if ($3<=2){getline;next}}1' file

Hi.

I think you mean less than 3? (based on your output)

$ awk '$2 == "Freq" { ($3<3)?P=0:P=1}P' file1
>GHL8OVD01CMQVT Freq 15
TTGATGTCGTGGGTTTCCCGTCAACACCGGCAAATAGTAGCAGCACTACCAGGACCTTCGCCCA
>GHL8OVD01CMQVW Freq 11
TTGATGTGTCCCGTCGACACCGGCAAATAGCAGCAGCACTACCAGGACCTTCGCCCA
>GHL8OVD01A45V3 Freq 9
TTGATTCCCGTCGACACCGGCAAATAGCAGCAGCACTACAGGACCTTCGCCCA
>GHL8OVD01BL8BD Freq 4
TTGATGAGTACTTCCCCCGGTGACGTGGGTCAGCACTACCAGGACCTTCGCCCA
>GHL8OVD01AV2U9 Freq 17
TTGATGTGCCAACTAGCAAGACTGCGCGTGCAAATAGTAGCAGCACTACCAGGACCTTCGCCCA
>GHL8OVD01BJX6A Freq 3
TTGATGTGCCAGCTGCCGTTGTCCCCCGGTGACGTGGGTCTCCCGTCGAGGACCTTCGCCCA

1 Like

Your example uses less than or equal to two.... which is what this does:

 awk ' /^>/ && $NF>2 {ok=1}
       /^>/ && $NF<3 {ok=0}
       ok {print $0} ' filename