How do I create a Markov Matrix with variables instead of numbers for probabilities?

1 次查看(过去 30 天)
How do I create a Markov Matrix with variables instead of numbers where the probabilities should go?

采纳的回答

Dana
Dana 2020-9-4
If your goal is to manipulate P symbolically (i.e., algebraically, rather than numerically), then you'll need to use Matlab's symbolic toolbox if you have it. In that case,
P = sym('p',[4,4]);
creates a symbolic matrix P with element (i,j) denoted by pi_j.
  2 个评论
Khushi Patel
Khushi Patel 2020-9-4
Thank you so much!
Just wondering, is there any way to sub in values for p1_1, p11_2....pi_j into the matrix?
Dana
Dana 2020-9-4
Use the subs function. To do one element at a time, subs(P,'p1_1',1) would replace p1_1 (which is the (1,1) element of P) with the number 1. To replace the whole matrix in one go with the elements of another matrix:
m = magic(4); % an arbitrary 4-by-4 numeric matrix
Psub = subs(P,P,m);
Note that the output of the subs function is still a symbolic matrix, even if it contains only numbers. To convert a symbolic matrix (or other symbolic variable) to a numeric one, use eval:
Psubnum = eval(Psub);

请先登录,再进行评论。

更多回答(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