How to generate 100 sample points of a 3-state Markov chain with initial prob vector and transition probability matrix using inverse transform method on matlab.

15 views (last 30 days)
P = [0.3 0.1 0.1; 0.3 0.9 0.1; 0.4 0 0.8]; % Transition Matrix
P0 = [0.1 0.9 0]; %initial probability Vector
Then I dont know how to do the rest. Please help me.

Accepted Answer

Rick Rosson
Rick Rosson on 30 Nov 2015
Edited: Rick Rosson on 30 Nov 2015
Here's a start:
P = [0.3 0.1 0.1; 0.3 0.9 0.1; 0.4 0 0.8]; % Transition Matrix
P0 = [0.1 0.9 0]; %initial probability Vector
C0 = cumsum(P0);
M = length(P0);
N = 100;
x = nan(N,1);
x(1) = (M + 1) - sum(rand <= C0);
for k = 2:N
x(k) = ...
end
  3 Comments
Stephen23
Stephen23 on 30 Nov 2015
Edited: Stephen23 on 30 Nov 2015
@jndmwx: then you need to learn to use the documentation. You can search the documentation using any good internet search engine. I just searched for "MATLAB nan", and this is the first result that was returned:
"For example, NaN(3,4) returns a 3-by-4 array of NaN values".

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by