Bioinformatics

6 Ansichten (letzte 30 Tage)
Talha
Talha am 14 Jul. 2011
I am trying to come up with a multiple sequence alignment, however it keeps giving me error.
m157proteinalignment=multialign('m157k10aa','m157g1faa','m157g1baa')
This is what I put in, and I tried without the apostrophe and the comma (all the possible combinations). It always gives out: ??? Error using ==> multialign at 180 At least 3 input sequences must be supplied to MULTIALIGN.
The things in the parenthesis are amino acid sequences.
I was wondering if someone would be willing to tell me what I am doing wrong and how to do it step by step. I would greatly appreciate it!

Akzeptierte Antwort

Lucio Cetto
Lucio Cetto am 15 Jul. 2011
The first input of multialign is a collection of sequences to be aligned, this can be:
1) an array of structures with the "Sequence" and "Header" fields e.g.
>> seqs(1).Header = 'm157k10aa';
>> seqs(1).Sequence = 'TYNYMRQLVVDVVITNHYSV';
>> seqs(2).Header = 'm157g1faa';
>> seqs(2).Sequence = 'FATYFSPGFDPAQARTFEVAHG';
>> seqs(3).Header = 'm157g1baa';
>> seqs(3).Sequence = 'SSDIHMPSQFFDNIVEKCSQLFWVL';
2) just a cell array of strings (incase you do not care about the header names), e.g.
>> seqs2{1} = 'TYNYMRQLVVDVVITNHYSV';
>> seqs2{2} = 'FATYFSPGFDPAQARTFEVAHG';
>> seqs2{3} = 'SSDIHMPSQFFDNIVEKCSQLFWVL';
Usually you do not build these collections manually, for example the function FASTAREAD will return an array of structures if one file contains all your sequences.
Note that in my examples I made the aminoacid sequences up, your strings do not look like real aa, they look more like the header.
It may also be possible that you have one sequence per FASTA file and you have already done somethingh similar to this:
>> m157k10aa = fastaread('m157k10aa.fa')
Then you only need to build an structure array from the individual structures:
>> seqs3 = [m157k10aa,m157g1faa,m157g1baa]
HTH Lucio

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 15 Jul. 2011
m157proteinalignment = multialign({'m157k10aa','m157g1faa','m157g1baa'});
With the syntax you had, you were passing in 'mk157k10aa' as the single sequence name to work on, and then it was probably interpreting the rest as if you meant that the property named 'm157g1faa' should be given the value 'm157g1baa'

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by