Question: How to find the overlapping peptide from a list.
0
gravatar for arriyaz.nstu
11 days ago by
arriyaz.nstu0 wrote:

I have the following sequence;

IRCIGVSNRDFVEGMSGGTWVDVVLEHGGCVTVMAQDKPTVDIELVTTTVSNMAEVRSYCYEASISDMASDSRCPTQGEAYLDKQSDTQYVCKRTLVDRGWG NGCGLFGKGSLVTCAKFACSKKMTGKSIQPENLEYRIMLSVHGSQHSGMI

I used three tools/methods from the Immune Epitope Database (IEDB) to predict antigenic peptides from this sequence. So, each of the method generated a list of peptides. Thus I have three lists for the given sequence. The principle is; I will find the peptide that is common or overlapping in all three lists.

Here in the linked table, I found a peptide DSRCPTQ common and overlapping in all three lists. But I did it manually.

Is it possible to find peptide in such a way through UNIX command in ubuntu terminal? If yes, then would you please suggest me the way?

Predicted Peptides

sequence • 70 views
ADD COMMENTlink modified 11 days ago by Mensur Dlakic1.7k • written 11 days ago by arriyaz.nstu0
3
gravatar for Mensur Dlakic
11 days ago by
Mensur Dlakic1.7k
USA
Mensur Dlakic1.7k wrote:

You may get some useful ideas from this post. For it to work, you would need to concatenate all peptides from the same predictions into one string, but with space characters separating them:

pept_combo1 GVSNRDFVEGMSGGTWVDVVLEHGGCVTVMAQDKPTVDIELVTTTVSNMAEVRSYCYEASISDMASDSRCPTQGEAYLDKQSDTQYVCKRTLVDRGWGNGCGLFGKGSLVTCAKFACSKKMTGKSIQPENLEYRIMLSVHGSQHS
pept_combo2 MAQDKPTV MASDSRCPTQGEAYLDKQSDT KSIQPENLEYR
pept_combo3 WVDVVLEHGGCVTVM KPTVDIELVTTT VRSYCYEAS DSRCPTQ TQYVCKRTLVDR KGSLVTCAKFACSK RIMLSVHGSQ

For this to work with the accepted python script in a post I referenced above, you would skip the pept_comboX part and only paste the sequences.

def long_substr(data):
    substr = ''
    if len(data) > 1 and len(data[0]) > 0:
        for i in range(len(data[0])):
            for j in range(len(data[0])-i+1):
                if j > len(substr) and is_substr(data[0][i:i+j], data):
                    substr = data[0][i:i+j]
    return substr

def is_substr(find, data):
    if len(data) < 1 and len(find) < 1:
        return False
    for i in range(len(data)):
        if find not in data[i]:
            return False
    return True

print long_substr(['GVSNRDFVEGMSGGTWVDVVLEHGGCVTVMAQDKPTVDIELVTTTVSNMAEVRSYCYEASISDMASDSRCPTQGEAYLDKQSDTQYVCKRTLVDRGWGNGCGLFGKGSLVTCAKFACSKKMTGKSIQPENLEYRIMLSVHGSQHS',
                   'MAQDKPTV MASDSRCPTQGEAYLDKQSDT KSIQPENLEYR',
                   'WVDVVLEHGGCVTVM KPTVDIELVTTT VRSYCYEAS DSRCPTQ TQYVCKRTLVDR KGSLVTCAKFACSK RIMLSVHGSQ'])

This script will print out DSRCPTQ.

ADD COMMENTlink written 11 days ago by Mensur Dlakic1.7k

It is working nicely. Thank you very much.

ADD REPLYlink written 11 days ago by arriyaz.nstu0
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1401 users visited in the last hour