Abejas
setwd("~/EAMJ1130/u1a9")Asumamos que tenemos una cadena de markov
\(X = \lbrace X_{1},X_{2},\ldots \rbrace\) definida en el espacio de estados \(S = \lbrace soleado,nublado,lluvioso \rbrace\) y cuya matriz de transición es:
\[ P = \left( {\begin{array}{ccc} 0.7 & 0.2 & 0.1 \\ 0.3 & 0.4 & 0.3 \\ 0.2 & 0.45 & 0.35 \\ \end{array} } \right) \]
P <- matrix(c(0.7,0.2,0.1,0.3,0.4,0.3,0.2,0.45,0.35),nrow=3, byrow=TRUE)
P## [,1] [,2] [,3]
## [1,] 0.7 0.20 0.10
## [2,] 0.3 0.40 0.30
## [3,] 0.2 0.45 0.35
library(markovchain)## Package: markovchain
## Version: 0.8.5-4
## Date: 2021-01-07
## BugReport: https://github.com/spedygiorgio/markovchain/issues
mc <- new("markovchain", transitionMatrix=P, states=c("Soleado","Nublado","Lluvioso"),name="Cadena 1" )La estructura del objeto mc es:
str(mc)## Formal class 'markovchain' [package "markovchain"] with 4 slots
## ..@ states : chr [1:3] "Soleado" "Nublado" "Lluvioso"
## ..@ byrow : logi TRUE
## ..@ transitionMatrix: num [1:3, 1:3] 0.7 0.3 0.2 0.2 0.4 0.45 0.1 0.3 0.35
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : chr [1:3] "Soleado" "Nublado" "Lluvioso"
## .. .. ..$ : chr [1:3] "Soleado" "Nublado" "Lluvioso"
## ..@ name : chr "Cadena 1"
El resumen de la cadena es:
summary(mc)## Cadena 1 Markov chain that is composed by:
## Closed classes:
## Soleado Nublado Lluvioso
## Recurrent classes:
## {Soleado,Nublado,Lluvioso}
## Transient classes:
## NONE
## The Markov chain is irreducible
## The absorbing states are: NONE
Para visualizar el diagrama de transición de la cadena lo realizamos con la función plot
plot(mc)Para la cadena de markov definida se obtiene que:
recurrentClasses(mc)## [[1]]
## [1] "Soleado" "Nublado" "Lluvioso"
transientStates(mc)## character(0)
absorbingStates(mc)## character(0)
Para conocer la probabilidad de transición en 1 paso entre un estado y otro basta con utilizar la función transitionProbability(), con los argumentos:
object: la cadena de markov
t0: el estado en el tiempo 0
t1: el estado en el tiempo 1
La probabilidad de transicion en un paso del estado “Soleado” al estado “Luvioso” es:
transitionProbability(object=mc,t0="Soleado",t1="Luvioso")## [1] NA
mc[2,3]## [1] 0.3
n = 5 # Número de pasos al futuro
mc**n## Cadena 1^5
## A 3 - dimensional discrete Markov Chain defined by the following states:
## Soleado, Nublado, Lluvioso
## The transition matrix (by rows) is defined as follows:
## Soleado Nublado Lluvioso
## Soleado 0.4733287 0.3133356 0.2133356
## Nublado 0.4569262 0.3215369 0.2215369
## Lluvioso 0.4528256 0.3235872 0.2235872