马尔可夫链转移矩阵:MATLAB函数稀疏 - 索引超出矩阵维数

时间:2016-01-07 13:57:33

标签: matlab matrix sparse-matrix markov-chains

我引用了这个问题:Estimate Markov Chain Transition Matrix in MATLAB With Different State Sequence Lengths

所描述的程序对我来说非常合适,但是我无法调整最后一个Matlab命令来创建转换矩阵{TESTS=[{id=1, lastSyncDate=12/16/2015 07:06:38, listOfTESTsyncrealtimeChild=null}, {id=2, lastSyncDate=12/16/2015 07:06:38, listOfTESTsyncrealtimeChild=null}]}

S = sparse(i,j,v,m,n)

这是我的数据,包含18个独特的转换和相应的概率:

transitionMatrix = sparse(uniqueTransitions(:,1), uniqueTransitions(:,2), p, 6,6)

如何计算参数' m'和' n'? 我已经阅读了在线Matlab文档并尝试了很多参数,但我找不到解决方案。

1 个答案:

答案 0 :(得分:1)

您正在创建一个大小为6乘6的稀疏矩阵,但您的数据显然更大。假设每个状态都可以访问,您可以简单地跳过size参数:

transitionMatrix = sparse(uniqueTransitions(:,1), uniqueTransitions(:,2), p)

只有当您想要创建一个包含仅包含零的最后一行或最后一列的矩阵时,这一点非常重要。