找到过渡矩阵的极限分布并在 R 中绘制
Find limiting distribution of transition matrix and plot in R
我可以知道如何找到并绘制 R 中转移矩阵的极限分布或唯一平稳分布的结果吗? (我的目标是获得唯一且恒定的结果而不是随机结果)
这是使用的P矩阵:
P=matrix(c(0.2,0.3,0.5,0.1,0.8,0.1,0.4,0.2,0.4),nrow=3,ncol=3,byrow=TRUE)
我之前的回答有误。对于转换矩阵,行或列的总和都需要为 1。这取决于您是使用 v'P
还是 Pv
过渡到下一步。
我会用Pv.
为了使极限分布稳定,我们必须有:
Pv = v
,或 (P - I)v = 0
。所以极限分布是一个特征值为 1 的特征向量。然后要确保它是一个分布 sum(v) == 1。
由于您的矩阵的行总和为 1,而不是列,因此我们需要使用矩阵的转置来计算特征值:
e <- eigen(t(P))$vectors[, 1]
e <- e / sum(e)
给出:
e
[1] 0.1960784 0.5490196 0.2549020
检查这个:
P=matrix(c(0.2,0.3,0.5,0.1,0.8,0.1,0.4,0.2,0.4),nrow=3,ncol=3, byrow = TRUE)
ans <- e
for (i in 1:1000) {
ans <- ans %*% P
}
ans
ans
[,1] [,2] [,3]
[1,] 0.1960784 0.5490196 0.254902
一样,所以很稳定。
我不清楚你想策划什么。
我可以知道如何找到并绘制 R 中转移矩阵的极限分布或唯一平稳分布的结果吗? (我的目标是获得唯一且恒定的结果而不是随机结果)
这是使用的P矩阵:
P=matrix(c(0.2,0.3,0.5,0.1,0.8,0.1,0.4,0.2,0.4),nrow=3,ncol=3,byrow=TRUE)
我之前的回答有误。对于转换矩阵,行或列的总和都需要为 1。这取决于您是使用 v'P
还是 Pv
过渡到下一步。
我会用Pv.
为了使极限分布稳定,我们必须有:
Pv = v
,或 (P - I)v = 0
。所以极限分布是一个特征值为 1 的特征向量。然后要确保它是一个分布 sum(v) == 1。
由于您的矩阵的行总和为 1,而不是列,因此我们需要使用矩阵的转置来计算特征值:
e <- eigen(t(P))$vectors[, 1]
e <- e / sum(e)
给出:
e
[1] 0.1960784 0.5490196 0.2549020
检查这个:
P=matrix(c(0.2,0.3,0.5,0.1,0.8,0.1,0.4,0.2,0.4),nrow=3,ncol=3, byrow = TRUE)
ans <- e
for (i in 1:1000) {
ans <- ans %*% P
}
ans
ans
[,1] [,2] [,3]
[1,] 0.1960784 0.5490196 0.254902
一样,所以很稳定。 我不清楚你想策划什么。