The aligner program I am using (MUSCLE) does not have a parameter for reference sequence. Is it possible to design a script that runs in this manner:
- Pick the first sequence from my 50 million ones.
- Create a temporary fasta file of 2 sequences, first the ref then the picked sequence.
- Align these two which creates an output (temp.out). This way the sequence is forced to align only to the ref.
- Extract the aligned sequence (this will be the second sequence in temp.out) and paste it to the final output (output_main)
In this way run the loop for all sequences, each time aligning with the ref sequence and adding the aligned sequence to the main file (output_main).
Apologies if this seems unclear or too contrived.
what kind of sequences do you have? (long? short?) Why do you want/think you need to use MSA ? and lastly, what have you tried/looked for already?
(aka, provide more info to get more meaningful replies)
I have protein sequences in fasta format. They correspond to a viral protein whose length is around 1000 amino acids. To clarify, I do not need MSA here. I have the wild type sequence and want to align all sequences wrt it. I had tried MUSCLE previously but that did not work here
none of the 'classical' aligners will be able to do this (align protein to DNA). They all work with same type of sequences.
what I think you are looking for is protein-mappers (rather in the gene prediction area than aligner area), perhaps things like genewise, genomethreader, ... might be of use.
Actually by wild type sequence I meant protein sequence and not the DNA/RNA. Sorry for the confusion. I am indeed mapping protein to protein here.
ok, makes more sense indeed.
Did you try the new clustal omega ? it should be able to take a huge number of input sequences to perform alignment with.
As an alternative, you can try to do progressive alignment, as in: take the first 100 sequences, align those, get the result and use that to align the next 100 to it. Tools such as t-coffee, muscle, emma, ... can also take a profile (==set of already aligned sequences) as input, as well as a fasta file.