MATLAB: How to modify and run this Script??

bioinformaticsBioinformatics ToolboxMATLAB and Simulink Student Suiteplotting graphsscriptsequence analysis

Hello world, I am new to matlab and doesn't know much of it and for this I wasn't able to understand and run a script that I had. Below is the script which I need to run for few thousands of times. Can anybody help in rectifying/modifying the script so that it runs with input fasta file(file contains Uniprot_ID and Seq) and writes the output in new files names according to the Uniprot_ID. Thank You in advance for your help and time.
data.Sequence=MDULSQ…….
data.Header=header file
fastawrite(my_test.txt,data)
type(my_test.txt)
FASTAData=fastaread(my_test.txt)
[Sequence]=fastaread(my_test.txt)
data=proteinpropplot(Sequence,property,hydrophobicity(Kyte & Doolittle))
zero_crossings_indices=data.Indices(diff(sign(data.Data))~=0)
plot(data.Indices,data.Data,-)
hold on
plot(zero_crossings_indices,0,ro)
inputfile.txt
>tr|D6RGD4|D6RGD4_HUMAN Amyloid-beta A4 precursor protein-binding family B member 2 (Fragment) OS=Homo sapiens OX=9606 GN=APBB2 PE=1 SV=1
MAERKNAKALACSSLQERANVNLDVPLQVDFPTPKTELVQKFHVQYLGMLPVDKPVGMDI
LNSAIENLMTSSNKEDWLSVNMNVADA
>tr|G3V3P0|G3V3P0_HUMAN Presenilin-1 (Fragment) OS=Homo sapiens OX=9606 GN=PSEN1 PE=1 SV=1
MTELPAPLSYFQNAQMSEDNHLSNTNDNRERQEHNDRRSLGHPEPLSNGRPQGNSRQVVE
QD
>tr|A0A0A0MRG2|A0A0A0MRG2_HUMAN Amyloid-beta A4 protein OS=Homo sapiens OX=9606 GN=APP PE=1 SV=1
MFCGRLNMHMNVQNGKWDSDPSGTKTCIDTKEGILQYCQEVYPELQITNVVEANQPVTIQ
NWCKRGRKQCKTHPHFVIPYRCLVGEFVSDALLVPDKCKFLHQERMDVCETHLHWHTVAK
ETCSEKSTNLHDYGMLLPCGIDKFRGVEFVCCPLAEESDNVDSADAEEDDSDVWWGGADT
DYADGSEDKVVEVAEEEEVAEVEEEEADDDEDDEDGDEVEEEAEEPYEEATERTTSIATT
Result======expecting.
D6RGD4.file_extension
G3V3P0.file_extension
A0A0A0MRG2.file_extension

Best Answer

FileName = 'inputfile.txt';
S = fastaread(FileName);
for f = 1:length(S)
FileNameExp = regexp(S(f).Header, 'tr\|(\w+)\|', 'tokens');
SaveName = [FileNameExp{1}{1} '.png'];
if exist(SaveName, 'file'); continue; end %Skips just in case you run this multiple times. Don't want
%to append data to self, which is what fastawrite does.
data = proteinpropplot(S(f).Sequence,'propertytitle','hydrophobicity (Kyte & Doolittle)');
zero_crossings_indices = data.Indices(diff(sign(data.Data))~=0);
plot(data.Indices,data.Data,'-');
hold on
plot(zero_crossings_indices,0,'ro')
hold off
print(gcf, SaveName, '-dpng', '-r300', '-painters');
end
Related Question