Download msb4100083-sup

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Supplemental data 8b : mRNA degradation
t0 distribution
thalf distribution
250
25%
40%
140
)
200
120
20%
20%
100
15%
10%
50
0
0
30
60
120
210
300
15%
80
60
10%
40
5%
5%
20
0%
0
330
time [s]
0%
1 2 3 4 5 6 7 8 9 0 5 5 5 0 5 0 0 0 0
0- 1- 2- 3- 4- 5- 6- 7- 8- 9-1 12. 5-1 17. 5-2 0-2 5-3 0-4 0-5 >5
- . - . 2 2 3 4
10 12 15 17
time [s]
This part contains:
Two Matlab program files (decay_fit.m and genex_fit.m) that can be used to
calculate the half-life of mRNA from dynamic transcript data based on equation:
mRNA(t)/mRNA(t0)= A + A*exp(-kd*(t-t0))
The data used for the calculation are stored in peNia_data_update.mat (6c) and
Wang_data_update.mat (6d).
As a summary, the data and results are also presented as an excel file (mRNA
degradation.xls).
1- decay_fit_m
%% decay_fit
%% estimation of degradation constant of mRNA
%% from dynamic transcript data (mRNA degradation.xls), for fitting process in
Matlab data are also stored as peNia_data_update.mat and Wang_data_update.mat
%% mRNA decay is modeled by a flat line y=A (before decay) and exponential
y=A*exp(-kd*(t-t0)) for the decay itself, t0 is the time at which the decay starts
%% results to be compared with Wang data (PNAS,2002) in which the kd is analysed
with this program as well
%% data structure
%% time_vec = time vector of the raw data (z)
%% genex = ratio matrix (m,z)
%% genex_sd = std of the ratio (m,z)
opt=optimset('fmincon');
opt=optimset(opt,'Display','off','Diagnostics','off','MaxIter',2000,'MaxFunEvals',10000,'
TolX',1e-12,'TolFun',1e-12,'DiffMinChange',1e-8);
%load data (time_vec, genex, genex_sd)
M=input('processing peNia data (1) or Wang data (2)?')
if M=1;load (peNia_data_upade);
elseif M=2;load (Wang_data_update);
end
m=size(genex,1);
zA=size(genex,2);
ss_mat=[]; par_mat=[]; m_mat=[]; t_half_mat=[]; z=[];
)
100
%(
25%
150
number of genes (
30%
%( )
number of genes ( )
35%
for gene=1:m
gene
%% screening data
close all
genex_i=genex(gene,:); genex_sd_i= genex_sd(gene,:); time_vec_i= time_vec;
pR= find(genex_i==0);
genex_i(pR)=[]
genex_sd_i(pR)=[]
time_vec_i(pR)=[]
z(gene)= zA-length(pR)
pause
%%%% adjusting the weight matrix
pE= find(genex_sd_i==1);
if length(pE)<z(gene)
genex_sd_i(pE)= mean(genex_sd_i); % for peNia's data since if std=0 means
perfect data or in case of Wang's data std=0 means only 1 measurement available
(much simplification because a lot of the data do not have any duplicate)
else
genex_sd_i(pE)=1; % if all data were taken one only, no weight is applied to the
optimization process
end
pE= find(genex_sd_i==0);genex_sd_i(pE)=1
pause
if z(gene)<=1
m_mat=[m_mat;0];
ss_mat=[ss_mat; 0];
par_mat=[par_mat; [0 0]];
else
errorbar(time_vec_i,genex_i,genex_sd_i,'r*');title(num2str(gene));
hold on
%% estimation of model parameters: A, kd
ss_vec=[]; par_vec=[];
for timepoint=1:z(gene)-1
[parameters,ss]=FMINCON('genex_fit',[1;0.01],[],[],[],[],[0.5
10],[],opt,timepoint,genex_i,genex_sd_i,time_vec_i,z(gene));
ss_vec=[ss_vec ss];
par_vec=[par_vec parameters];
sim_tot=
parameters(1).*
[ones(1,timepoint)
parameters(2).*(time_vec_i(timepoint+1:z(gene))-time_vec_i(timepoint)))];
plot(time_vec_i,sim_tot,'b');
end
hold off
pause
%% choosing the best result
gene
ss_vec
par_vec
maxi= find(ss_vec==min(ss_vec))
if length(maxi)>0
if length(maxi)>1
0],[2
exp(-
maxi=max(maxi);
end
m_mat=[m_mat; maxi];
ss_mat=[ss_mat; ss_vec(maxi)];
par_mat=[par_mat; (par_vec(:,maxi))'];
else
m_mat=[m_mat;0];
ss_mat=[ss_mat; 0];
par_mat=[par_mat; [0 0]];
end
pause
close all
end
end
t_half_mat=-log(0.5)./par_mat(:,2)/60
2- genex_fit m
% genex_fit
function [ss]=genex_fit(parameters,timepoint,genex_i,genex_sd_i,time_vec_i,z)
sim_tot=
parameters(1).*
[ones(1,timepoint)
exp(parameters(2).*(time_vec_i(timepoint+1:z)-time_vec_i(timepoint)))];
ss=((sim_tot-genex_i)*inv(diag((genex_sd_i).^2))*(sim_tot-genex_i)')/z;
Related documents