This is a test version of Biostars. For the public version, visit https://www.biostars.org.
remove the fasta sequence which doesn't contain ATGC

I have a fasta sequence in which some sequence doesn't contain "ATGC" like below so I want to remove all fasta sequences from my file which doesn't contain the proper sequence:-

>hsa-NHS_0029
partial

Thanks in advance

fasta

partial has two 'a's and one 't' in it. Try

$ seqkit -w 0 grep -srip '[ATGC]' test.fa

it doesn't remove those fasta sequences with a header in my output file.

Please post example fasta file, code you have run and output from example fasta file.

Below is the example fasta file in which you can see a fast sequence is "partial" which is not actually a fast sequence and I want to remove all this sequence from my fasta file with a header.

>hsa-NHS_0029
partial

>hsa-MAP3K2_0035
CAAAGCAGACACAGTCTTTTTCCTTATGGGGCTTATAGTGTGGTATTGGTGGTCTTCAAGCTTTAGGTGCATGCTCTCTAGGGGCAGCACAGGCCAGTCTTTGGGAAGTAGAAAGAAAACACTAGAATTTTAATCTTGTAAAAATATTTATTTTGGAAGTATGCCTACATGATATATGTACCCAAAAATGTTGAGTTGATAAGGATACAGAAATCAAAATTTGAATCCCTGGAGAACAACTTTATTCTTTTTAACAGTTTCATTTCATTCTGTCATACAGATGTCACATAGTTAAGTTTAATCAGTTTCCTGAATAAACATTTTGCATTGCTCTTTAACATTCATATGGTAGTTTCAGTGCAAATTAAAAACTGCAGAAAATTTTGAGAATTTCCTTTTTAAAATTTGTATTAGGATAAAACAGACTTCAGAGTTTTTGAACTTTGTGTTGAAAATGTGTGCCTGTGTTAAAAAATGTGCTGTTGTAGTGTTAAGTAAAGTGAATATTTACGTAATTTTTAGTTAATCTTGTATCACTCTAAAAGGAG

>hsa-TMOD2_0026
ATGTTGTCAAAGGTGAAAAAGTAAAGCCAGTATTTGAGGAACCACCAAATCCCACAAATGTGGAAATAAGCCTGCAGCAGATGAAAGCCAATGATCCTAGCTTGCAAGAAGTCAACCTCAACAACATTAAGTTCGTAAGAAGAGAGTTGAAGCAGACCGAAG

As you suggested a seqkit command, I ran it but it don't remove those sequences from my file.

seqkit -w 0 grep -srip '[ATGC]' test.fa >test_new.fa

So I want the output is like below :- In which the "partial" fasta sequence is removed with a header.

>hsa-MAP3K2_0035
    CAAAGCAGACACAGTCTTTTTCCTTATGGGGCTTATAGTGTGGTATTGGTGGTCTTCAAGCTTTAGGTGCATGCTCTCTAGGGGCAGCACAGGCCAGTCTTTGGGAAGTAGAAAGAAAACACTAGAATTTTAATCTTGTAAAAATATTTATTTTGGAAGTATGCCTACATGATATATGTACCCAAAAATGTTGAGTTGATAAGGATACAGAAATCAAAATTTGAATCCCTGGAGAACAACTTTATTCTTTTTAACAGTTTCATTTCATTCTGTCATACAGATGTCACATAGTTAAGTTTAATCAGTTTCCTGAATAAACATTTTGCATTGCTCTTTAACATTCATATGGTAGTTTCAGTGCAAATTAAAAACTGCAGAAAATTTTGAGAATTTCCTTTTTAAAATTTGTATTAGGATAAAACAGACTTCAGAGTTTTTGAACTTTGTGTTGAAAATGTGTGCCTGTGTTAAAAAATGTGCTGTTGTAGTGTTAAGTAAAGTGAATATTTACGTAATTTTTAGTTAATCTTGTATCACTCTAAAAGGAG

    >hsa-TMOD2_0026
    ATGTTGTCAAAGGTGAAAAAGTAAAGCCAGTATTTGAGGAACCACCAAATCCCACAAATGTGGAAATAAGCCTGCAGCAGATGAAAGCCAATGATCCTAGCTTGCAAGAAGTCAACCTCAACAACATTAAGTTCGTAAGAAGAGAGTTGAAGCAGACCGAAG

do you really have string 'partial' as your sequence? didn't understand that. Here is the solution:

$ seqkit -w 0 grep -svp "partial" test.fa

>hsa-MAP3K2_0035
CAAAGCAGACACAGTCTTTTTCCTTATGGGGCTTATAGTGTGGTATTGGTGGTCTTCAAGCTTTAGGTGCATGCTCTCTAGGGGCAGCACAGGCCAGTCTTTGGGAAGTAGAAAGAAAACACTAGAATTTTAATCTTGTAAAAATATTTATTTTGGAAGTATGCCTACATGATATATGTACCCAAAAATGTTGAGTTGATAAGGATACAGAAATCAAAATTTGAATCCCTGGAGAACAACTTTATTCTTTTTAACAGTTTCATTTCATTCTGTCATACAGATGTCACATAGTTAAGTTTAATCAGTTTCCTGAATAAACATTTTGCATTGCTCTTTAACATTCATATGGTAGTTTCAGTGCAAATTAAAAACTGCAGAAAATTTTGAGAATTTCCTTTTTAAAATTTGTATTAGGATAAAACAGACTTCAGAGTTTTTGAACTTTGTGTTGAAAATGTGTGCCTGTGTTAAAAAATGTGCTGTTGTAGTGTTAAGTAAAGTGAATATTTACGTAATTTTTAGTTAATCTTGTATCACTCTAAAAGGAG
>hsa-TMOD2_0026
ATGTTGTCAAAGGTGAAAAAGTAAAGCCAGTATTTGAGGAACCACCAAATCCCACAAATGTGGAAATAAGCCTGCAGCAGATGAAAGCCAATGATCCTAGCTTGCAAGAAGTCAACCTCAACAACATTAAGTTCGTAAGAAGAGAGTTGAAGCAGACCGAAG

0 answers

No answers yet.

Log in to answer this question.