필터 지우기
필터 지우기

Run a m-file (which simulates a Markov chain) multiple times and store the results

조회 수: 1 (최근 30일)
I wrote an m-file (called Markov) with simulates a Markov chain and creates time-series for a number of variables on the basis of that particular history of shocks realized.
I need to run the code for 1,000 times and store the results, so that I can calculate some statistics such as the mean standard deviation of my variables.
Thanks in advance.

채택된 답변

Ralf
Ralf 2016년 2월 19일
Can't you simply use a for Loop like this one?
for i=1:1000
result{i} = markov(input{i});
end
% Then you can process the results here
  댓글 수: 6
Sara
Sara 2016년 2월 22일
편집: Stephen23 2016년 2월 22일
If it can be of any help to other users, I managed to do it as follows. I opened another m-file (same directory) and wrote the following code:
result = zeros(1000,1000);
for k =1:1000
Markov
result(k,:)=nameofthevariable;
end
where the variable is a vector (1,1000).
Stephen23
Stephen23 2016년 2월 22일
편집: Stephen23 2016년 2월 22일
It seems that you have written a script. Functions are better for various reasons (own workspace, function encapsulation, debugging). You can easily turn your script into a function by writing this on the first line:
function out = Markov
... your code here
where the variable out is the name of whatever variable you have define inside your code that you want the function to return. You can then call this function in a loop:
result = zeros(1000,1000);
for k =1:1000
result(k,:) = Markov();
end
Read more about the differences between functions and scripts here:
In general functions are a much more robust and a better way to write code :

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Markov Chain Models에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by