La secuencia de v,a.’s \(X_0, X_1, ...\) es un proceso estocástico llamado cadena de Markov si se ilustra la propiedad esencial: el futuro, dado el presente, es independiente del pasado. Sea \(S\) un espacio de estados discreto, una cadena de Markov es una secuencia de v.a.’s \(X _0 , X _1 , …\) tomando valores en \(S\) (espacio de estados de la cadena) con la propiedad de que \(P(X_{n+1} = j|X _0 = x _0 , … , X _{n−1} = x_{n−1} , X_n = i) = P(X _{n+1} = j|X _n = i)\), para todas \(x _0 , … , x _{n−1} , i, j ∈ S\), y \(n ≥ 0\). Se emplea lenguaje descriptivo para la evoluciónion de la cadena. Si \(X _n = i\), la cadena visita el estado \(i\), o toma el valor \(i\), a tiempo \(n\). Una cadena es homogénea en el tiempo si \(P(X_{n+1}=j|X_n=i)=P(X_1=j|X_0=i) \,\ \forall \,\ n\geq 0\). Una cadena de Markov a tiempo discreto (\(S\) es discreto) está definida por la matriz de transición, \(P\), cuya \(ij-\) ésima entrada es \(P_{ij}=p(X_1=j|X_0=i\)) e indican la probabilidad de transición en un paso de estado a estado. Una matriz estocástica es una matriz \(P\), la cual es no negativa (\(P_{ij}\geq 0 \,\ \forall \,\ i,j\)) y cuyos renglones suman \(1\) (\(\sum_{j}P_{ij}=1\)). La \(n −\) ésima potencia de \(P\) es una matriz cuyas entradas representan las probabilidades de que la cadena en estado \(s _i\) al tiempo \(t\), entré la estado \(s _j\) al tiempo \(t + n\). En particular, si \(u _t\) es el vector de probabilidad para el tiempo \(t\), entonces la distribuciónn de la cadena al tiempo \(t + n\) está dad por \(u _n = u * P^n\). Las distribuciones marginales de una cadena de Markov están determinadas por la distribuciónn inicial \(𝜶\) y la matriz de transición \(P\). Entonces, \(𝜶\) y \(P\) determinan todas las distribuciones conjuntas de la cadena y para toda \(0 ≤ n _1 < n _2 < · · · < n _{k-1} < n _k\) y estados \(i _1 , i _2 , … , i _{k-1} , i _k\) , \(P(X _{n _1} = i _1 , X _{n _2} = i _2 , … , X _{n _{k-1}} = i _{k-1} , X _{n _k }= i _k )\) \(=(𝛼P ^{n _1} ) _{i _1} (P ^{n _2 -n _1} ) _{i _1 i _2}\) \(· · · (P^{n _k -n _{k-1}} ) _{i _{k-1} i _k} .\)
Considérense dos modelos inciales (Dobrow 2016; Spedicato 2017).
El modelo Wright–Fisher describe la evolución de una población fija de \(k\) genes. Cada gen puede ser de dos tipos, llamados alelos: A o a. Sea \(X _n\) el número de alelos A en la población al tiempo \(n\), con tiempo medido por generaciones. Bajo el modelo, el número de alelos A al tiempo \(n + 1\) se obtiene al muestrear con reemplazamiento de la población de genes al tiempo \(n\). Así, condicional de haber \(i\) alelos de tipo A al tiempo \(n\), el número de alelos A al tiempo \(n + 1\) distribuye binomial con parámetros \(k\) and \(p = i∕k\). Esto da la cadena de Markov con matriz de transición dada por:
\[\begin{equation} P_{ij} = {k\choose j} (\frac{i}{k})^j (1 − \frac{i}{k})^{k-j}. \tag{1} \end{equation}\]
Se tiene que \(P_{00}=P_{kk}=1\), y conforme la cadena progresa, la población eventualmente se compone totalmente de alelos a (estado \(0\)) o alelos A (estado \(k\)).
La progresión metastásica del cáncer de pulmón en todo el cuerpo se modela con \(50\) posibles localizaciones metastásicas para la propagación del cáncer, que son el espacio de estado para un modelo de cadena de Markov. Las entradas de la matriz se estimaron a partir de datos de autopsias extraídas de \(3827\) pacientes. La Figura 1 muestra la progresión como una transición entre estados.
library("markovchain")
mat <- read.csv("lungcancer.csv",header=T)
mcCancer <- new("markovchain", states = colnames(as.matrix(mat)),
byrow = TRUE, transitionMatrix = as.matrix(mat),
name = "Cancer")
plot(mcCancer, main="Cadena de Markov para Progresión Metastásica")
Figure 1: Red de propagación de cáncer de pulmón
Las Tablas 1 y 2 muestran la evolución metastásica después de \(2\) y \(4\) etapas respectivamente.
init <- c(rep(0,22),1,rep(0,27)) #inicia en pulmón
after2S <- init * (mcCancer * mcCancer)
after7S <- init * (mcCancer ^ 7)
library(knitr)
library(kableExtra)
after2S %>%
kable( caption = "Progresión segunda etapa.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Anus | Appendix | Bile.Duct | Bladder | Bone | Brain | Branchial.Cyst | Breast | Cervix | Colon | Diaphragm | Duodenum | Esophagus | Eye | Gallbladder | Heart | Kidney | Lg.Intestine | Larynx | Lip | Liver | Lung | LN..reg. | LN..dist. | Omentum | Ovaries | Pancreas | Penis | Pericardium | Peritoneum | Pharynx | Pleura | Prostate | Rectum | Retroperitoneum | Salivary | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Testes | Thyroid | Tongue | Tonsil | Unknown | Uterus | Vagina | Vulva |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.0943323 | 0 | 0 | 0 | 0.0016781 | 0.0614503 | 0.0239791 | 0 | 0 | 0 | 0 | 0.0193253 | 0 | 0 | 0 | 0.0096827 | 0.027185 | 0.0479607 | 0.0144535 | 0 | 0 | 0.0940617 | 0.0781844 | 0.185096 | 0.1228736 | 0.0065554 | 0 | 0.0369226 | 0 | 0.0208236 | 0.0198301 | 0 | 0.0435241 | 0.0016426 | 0 | 0 | 0 | 0.0032053 | 0.0131635 | 0.0097487 | 0.0289348 | 0.0080376 | 0 | 0.0240251 | 0 | 0 | 0 | 0.0016743 | 0.0016496 | 0 |
after7S %>% round(3) %>%
kable( caption = "Progresión séptima etapa.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Anus | Appendix | Bile.Duct | Bladder | Bone | Brain | Branchial.Cyst | Breast | Cervix | Colon | Diaphragm | Duodenum | Esophagus | Eye | Gallbladder | Heart | Kidney | Lg.Intestine | Larynx | Lip | Liver | Lung | LN..reg. | LN..dist. | Omentum | Ovaries | Pancreas | Penis | Pericardium | Peritoneum | Pharynx | Pleura | Prostate | Rectum | Retroperitoneum | Salivary | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Testes | Thyroid | Tongue | Tonsil | Unknown | Uterus | Vagina | Vulva |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.095 | 0 | 0 | 0 | 0.002 | 0.061 | 0.024 | 0 | 0 | 0 | 0 | 0.019 | 0 | 0 | 0 | 0.01 | 0.027 | 0.048 | 0.015 | 0 | 0 | 0.094 | 0.078 | 0.184 | 0.123 | 0.006 | 0 | 0.037 | 0 | 0.021 | 0.019 | 0 | 0.044 | 0.002 | 0 | 0 | 0 | 0.003 | 0.013 | 0.01 | 0.029 | 0.008 | 0 | 0.024 | 0 | 0 | 0 | 0.002 | 0.002 | 0 |
Los nombres, los estados, la dimensión y el acceso directo a las probabilidades de transición etán disponibles (Tablas 3, 4 , 5 y 6).
name(mcCancer) %>%
kable( caption = "Nombre cadena.", col.names = 'name') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| name |
|---|
| Cancer |
states(mcCancer) %>%
kable( caption = "Estados cadena.", col.names = 'states') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| states |
|---|
| Adrenal |
| Anus |
| Appendix |
| Bile.Duct |
| Bladder |
| Bone |
| Brain |
| Branchial.Cyst |
| Breast |
| Cervix |
| Colon |
| Diaphragm |
| Duodenum |
| Esophagus |
| Eye |
| Gallbladder |
| Heart |
| Kidney |
| Lg.Intestine |
| Larynx |
| Lip |
| Liver |
| Lung |
| LN..reg. |
| LN..dist. |
| Omentum |
| Ovaries |
| Pancreas |
| Penis |
| Pericardium |
| Peritoneum |
| Pharynx |
| Pleura |
| Prostate |
| Rectum |
| Retroperitoneum |
| Salivary |
| Skeletal.Musc |
| Skin |
| Sm.Intestine |
| Spleen |
| Stomach |
| Testes |
| Thyroid |
| Tongue |
| Tonsil |
| Unknown |
| Uterus |
| Vagina |
| Vulva |
dim(mcCancer) %>%
kable( caption = "Dimensión cadena.", col.names = 'dim') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| dim |
|---|
| 50 |
transitionProbability(mcCancer, "Lung", "Prostate") %>%
kable( caption = "Probabilidad de transición.", col.names = 'transitionProbability') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| transitionProbability |
|---|
| 0.0006362 |
#pander(table(mcCancer[23,34]))
#as(mcCancer, "data.frame")
Se puede utilizar la simulación para estudiar la progresión del cáncer de pulmón en el cuerpo, con la distribución inicial correspondiente al pulmón. La Tabla 7 presenta la realización del proceso para ocho pasos.
n <- 8
rmarkovchain(n, t0 = "Lung", object = mcCancer) %>%
kable( caption = "Evolución de la progresión metastásica.", col.names = 'rmarkovchain') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| rmarkovchain |
|---|
| Adrenal |
| Heart |
| Adrenal |
| LN..reg. |
| Thyroid |
| Lung |
| LN..dist. |
| Peritoneum |
Los principales métodos computacionales que se pueden aplicar en cadenas de Markov para realizar análisis probabilístico son:
La distribución condicional de la cadena de progresión metastásica, dada la etapa inicial en pulmón, viene dada en la Tabla 8.
conditionalDistribution(mcCancer, "Lung") %>%
kable( caption = "Probabilidad condicional.", col.names = 'conditionalProbability') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| conditionalProbability | |
|---|---|
| Adrenal | 0.1316462 |
| Anus | 0.0000000 |
| Appendix | 0.0000000 |
| Bile.Duct | 0.0000000 |
| Bladder | 0.0000869 |
| Bone | 0.0591406 |
| Brain | 0.0327419 |
| Branchial.Cyst | 0.0000000 |
| Breast | 0.0000000 |
| Cervix | 0.0000000 |
| Colon | 0.0000000 |
| Diaphragm | 0.0216894 |
| Duodenum | 0.0000000 |
| Esophagus | 0.0000000 |
| Eye | 0.0000000 |
| Gallbladder | 0.0101506 |
| Heart | 0.0363924 |
| Kidney | 0.0667700 |
| Lg.Intestine | 0.0172375 |
| Larynx | 0.0000000 |
| Lip | 0.0000000 |
| Liver | 0.0802794 |
| Lung | 0.0522269 |
| LN..reg. | 0.1511496 |
| LN..dist. | 0.1192838 |
| Omentum | 0.0030499 |
| Ovaries | 0.0000000 |
| Pancreas | 0.0465984 |
| Penis | 0.0000000 |
| Pericardium | 0.0273276 |
| Peritoneum | 0.0038447 |
| Pharynx | 0.0000000 |
| Pleura | 0.0473486 |
| Prostate | 0.0006362 |
| Rectum | 0.0000000 |
| Retroperitoneum | 0.0000000 |
| Salivary | 0.0000000 |
| Skeletal.Musc | 0.0041276 |
| Skin | 0.0043892 |
| Sm.Intestine | 0.0078592 |
| Spleen | 0.0341503 |
| Stomach | 0.0094878 |
| Testes | 0.0000000 |
| Thyroid | 0.0317994 |
| Tongue | 0.0000000 |
| Tonsil | 0.0000000 |
| Unknown | 0.0000000 |
| Uterus | 0.0000655 |
| Vagina | 0.0005206 |
| Vulva | 0.0000000 |
Un vector estacionario (estado estacionario o de equilibrio) es un vector de probabilidad tal que la Ecuación (2) se cumple.
\[\begin{equation} \begin{gathered} 0 \leq \pi_j \leq 1 \\ \sum_{j \in S} \pi_j = 1 \\ \pi \cdot P = \pi. \end{gathered} \tag{2} \end{equation}\]
Los estados estacionarios están asociados a valores propios de \(P\) iguales a uno. Se pueden calcular manualmente resolviendo los valores propios / vectores de la matriz, tomando partes reales (ya que si \(u + iv\) es un vector propio, para la matriz \(P\), entonces \(\mathbb{Re} (u + iv) = u\) e \(\mathbb{Im} (u + iv) = v\) son vectores propios) y normalizar por la suma vectorial, esto conlleva algunas inconvenientes:
Si \(u, v ∈ \mathbb{R} ^n\) son vectores propios linealmente independientes asociados a \(1\) valor propio, \(u + iv\), \(u + iu\) también son vectores propios linealmente independientes, y sus partes reales coinciden. Al tomar partes reales, se pierde un vector propio, porque no se puede saber de antemano si el algoritmo subyacente para calcular los vectores propios producirá algo similar a la descripción manual.
Como ejemplo, en la matriz identidad \(P\) de dimensiones \(2 × 2\), eigenvectores associados al eigenvalor \(1\) son \(u = (1, 0)\) y \(v = (0, 1)\). Sin embargo, el algoritmo subyacente para calcular los vectores propios podría devolver \((1, -2)\) y \((-2, 1)\) en su lugar, que son combinaciones lineales de los antes mencionados y, por lo tanto, vectores propios. Normalizando por su suma, se tiene: \((-1, 2)\) y \((2, -1)\), que no son medidas de probabilidad.
Algoritmos para calcular valores / vectores propios son computacionalmente costosos: son iterativos y no se puede predecir un número fijo de iteraciones para ellos. Cada iteración toma \(\mathcal{O} (m^2)\) u \(\mathcal{O} (m^3)\) en complejidad algorítmica, siendo \(m\) el número de estados.
Así, utilizando que cada cadena irreducible tiene un estado estable único, es decir, si \(M\) es la matriz de un cadena irreducible (todos los estados se comunican entre sí), entonces existe una \(v ∈ \mathbb{R}^m\) única tal que:
\[\begin{equation} \begin{gathered} v \cdot M = v, \,\ \sum_{i=1}^m v_i = 1. \end{gathered} \tag{3} \end{equation}\]
También, se usa que un estado estable para un cadena asigna \(0\) a los estados transitorios. La forma canónica de una matriz estocástica (por filas) es similar a:
\[\begin{pmatrix} M_1 & 0 & 0 & \cdots & 0\\ 0 & M_2 & 0 & \cdots & 0\\ 0 & 0 & M_3 & \cdots & 0\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ A_1 & A_2 & A_3 & \vdots & R \end{pmatrix}\]donde \(M _i\) corresponde a subcadenas irreducibles, los bloques \(A _i\) corresponden a las transiciones de los estados transitorios a cada una de las clases recurrentes y \(R\) son las transiciones de los estados transitorios a sí mismos.
Además, una cadena de Markov tiene exactamente el mismo nombre de estados estacionarios que clases recurrentes. Por tanto, la algorítmica efciente consiste en:
Para la progesión metstásica, la Tabla 9 muestra la recurrencia y la Tabla 10 la estacionariedad.
recurrentClasses(mcCancer) %>%
kable( caption = "Clases recurrentes.", col.names = 'recurrentClasses') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
|
steadyStates(mcCancer) %>% kable( caption = "Etapas estacionarias.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Anus | Appendix | Bile.Duct | Bladder | Bone | Brain | Branchial.Cyst | Breast | Cervix | Colon | Diaphragm | Duodenum | Esophagus | Eye | Gallbladder | Heart | Kidney | Lg.Intestine | Larynx | Lip | Liver | Lung | LN..reg. | LN..dist. | Omentum | Ovaries | Pancreas | Penis | Pericardium | Peritoneum | Pharynx | Pleura | Prostate | Rectum | Retroperitoneum | Salivary | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Testes | Thyroid | Tongue | Tonsil | Unknown | Uterus | Vagina | Vulva |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.0953145 | 0 | 0 | 0 | 0.0016161 | 0.0613901 | 0.024232 | 0 | 0 | 0 | 0 | 0.0193854 | 0 | 0 | 0 | 0.0096924 | 0.027463 | 0.0484647 | 0.0145389 | 0 | 0 | 0.0937003 | 0.0775452 | 0.184169 | 0.1227795 | 0.0064627 | 0 | 0.0371561 | 0 | 0.0210009 | 0.0193868 | 0 | 0.0436181 | 0.0016161 | 0 | 0 | 0 | 0.0032303 | 0.0129247 | 0.0096937 | 0.0290785 | 0.0080768 | 0 | 0.024232 | 0 | 0 | 0 | 0.0016161 | 0.0016161 | 0 |
La Tabla 11 muestra que para el caso de la evolución metastásica, no se cuenta con etapas absorbentes.
absorbingStates(mcCancer) %>% kable( caption = "Etapas absorbentes.", col.names = 'absorbingStates') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| absorbingStates |
|---|
Una descripción general de las propiedades estructurales en la cadena inluye la comunicación de clases, estados recurrentes y estados transitorios. Se puede obtener con una llamada a summary():
summary(mcCancer)
## Cancer Markov chain that is composed by:
## Closed classes:
## Adrenal Bladder Bone Brain Diaphragm Gallbladder Heart Kidney Lg.Intestine Liver Lung LN..reg. LN..dist. Omentum Pancreas Pericardium Peritoneum Pleura Prostate Skeletal.Musc Skin Sm.Intestine Spleen Stomach Thyroid Uterus Vagina
## Recurrent classes:
## {Adrenal,Bladder,Bone,Brain,Diaphragm,Gallbladder,Heart,Kidney,Lg.Intestine,Liver,Lung,LN..reg.,LN..dist.,Omentum,Pancreas,Pericardium,Peritoneum,Pleura,Prostate,Skeletal.Musc,Skin,Sm.Intestine,Spleen,Stomach,Thyroid,Uterus,Vagina}
## Transient classes:
## {Anus},{Appendix},{Bile.Duct},{Branchial.Cyst},{Breast},{Cervix},{Colon},{Duodenum},{Esophagus},{Eye},{Larynx},{Lip},{Ovaries},{Penis},{Pharynx},{Rectum},{Retroperitoneum},{Salivary},{Testes},{Tongue},{Tonsil},{Unknown},{Vulva}
## The Markov chain is not irreducible
## The absorbing states are: NONE
Todas las etapas que pertenecen a una clase transitoria se denominan transitorias, como lo muestra la Tabla 12.
transientStates(mcCancer) %>%
kable( caption = "Etapas transitorias.", col.names = 'transientStates') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| transientStates |
|---|
| Anus |
| Appendix |
| Bile.Duct |
| Branchial.Cyst |
| Breast |
| Cervix |
| Colon |
| Duodenum |
| Esophagus |
| Eye |
| Larynx |
| Lip |
| Ovaries |
| Penis |
| Pharynx |
| Rectum |
| Retroperitoneum |
| Salivary |
| Testes |
| Tongue |
| Tonsil |
| Unknown |
| Vulva |
Las clases recurrentes y comunicativas también se pueden identificar fácilmente y verificar si algún estado es accesible desde otro. En las Tablas 13 y 14 se muestran para el ejemplo de cáncer de pulmón, con una primera matástasis hacia el hígado.
is.accessible(mcCancer, from = "Lung",to="Liver") %>%
kable( caption = "Accesibilidad.", col.names = 'is.accessible') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| is.accessible |
|---|
| TRUE |
communicatingClasses(mcCancer) %>%
kable( caption = "Clases de comunicación.", col.names = 'communicatingClasses') %>%
kable_styling(bootstrap_options = c("striped", "hover"))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Las agrupaciones distintas identificadas con diferentes colores coinciden con la partición de la matriz de transición en clases comunicantes (Figura 2 ).
library(igraph)
#convertir a igraph
mathematica.igraph<-as(mcCancer,"igraph")
#encontrar y formatear clusters
SCC <- clusters(mathematica.igraph, mode="strong")
V(mathematica.igraph)$color <- rainbow(SCC$no)[SCC$membership]
#gráficar
plot(mathematica.igraph, mark.groups = split(1:vcount(mathematica.igraph), SCC$membership),
main="Clases de Comunicación - componentes fuertemente conectados")
Figure 2: Red de propagación con clases de comunicación
En las Tablas 15 y 16 se comparan las cadenas del ejemplo de cáncer de pulmón original y en su forma canónica, reordenando los estados para que se tengan primero las clases recurrentes y luego los estados transitorios.
head(mcCancer) %>%
kable( caption = "Matriz de transición. Progresión metastásica.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Anus | Appendix | Bile.Duct | Bladder | Bone | Brain | Branchial.Cyst | Breast | Cervix | Colon | Diaphragm | Duodenum | Esophagus | Eye | Gallbladder | Heart | Kidney | Lg.Intestine | Larynx | Lip | Liver | Lung | LN..reg. | LN..dist. | Omentum | Ovaries | Pancreas | Penis | Pericardium | Peritoneum | Pharynx | Pleura | Prostate | Rectum | Retroperitoneum | Salivary | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Testes | Thyroid | Tongue | Tonsil | Unknown | Uterus | Vagina | Vulva | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Adrenal | 0.0929191 | 0 | 0 | 0 | 0.0017816 | 0.0616255 | 0.0230358 | 0 | 0 | 0 | 0 | 0.0190903 | 0 | 0 | 0 | 0.0096325 | 0.0265072 | 0.0469276 | 0.0141380 | 0 | 0 | 0.0951544 | 0.0791280 | 0.1869619 | 0.1230210 | 0.0067250 | 0 | 0.0371970 | 0 | 0.0203339 | 0.0203435 | 0 | 0.0435043 | 0.0016625 | 0 | 0 | 0 | 0.0031316 | 0.0136254 | 0.0098825 | 0.0286261 | 0.0078899 | 0 | 0.0237367 | 0 | 0 | 0 | 0.0016956 | 0.0017230 | 0 |
| Anus | 0.0920986 | 0 | 0 | 0 | 0.0019911 | 0.0615810 | 0.0233818 | 0 | 0 | 0 | 0 | 0.0193080 | 0 | 0 | 0 | 0.0096543 | 0.0267528 | 0.0473524 | 0.0141917 | 0 | 0 | 0.0949987 | 0.0791329 | 0.1866386 | 0.1232733 | 0.0067049 | 0 | 0.0361895 | 0 | 0.0202875 | 0.0209903 | 0 | 0.0429641 | 0.0016868 | 0 | 0 | 0 | 0.0031136 | 0.0140173 | 0.0099266 | 0.0286088 | 0.0079312 | 0 | 0.0234442 | 0 | 0 | 0 | 0.0019935 | 0.0017864 | 0 |
| Appendix | 0.0922035 | 0 | 0 | 0 | 0.0019380 | 0.0615662 | 0.0236693 | 0 | 0 | 0 | 0 | 0.0192929 | 0 | 0 | 0 | 0.0096703 | 0.0258443 | 0.0472455 | 0.0142505 | 0 | 0 | 0.0953131 | 0.0791705 | 0.1870708 | 0.1229968 | 0.0069453 | 0 | 0.0364370 | 0 | 0.0200158 | 0.0207375 | 0 | 0.0432081 | 0.0017209 | 0 | 0 | 0 | 0.0031883 | 0.0139565 | 0.0098537 | 0.0284309 | 0.0079280 | 0 | 0.0235414 | 0 | 0 | 0 | 0.0019986 | 0.0018062 | 0 |
| Bile.Duct | 0.0921822 | 0 | 0 | 0 | 0.0019237 | 0.0615735 | 0.0237489 | 0 | 0 | 0 | 0 | 0.0192083 | 0 | 0 | 0 | 0.0096736 | 0.0263237 | 0.0459250 | 0.0144360 | 0 | 0 | 0.0951446 | 0.0794473 | 0.1872063 | 0.1230085 | 0.0066871 | 0 | 0.0360433 | 0 | 0.0202636 | 0.0216961 | 0 | 0.0432441 | 0.0017292 | 0 | 0 | 0 | 0.0032176 | 0.0141830 | 0.0098927 | 0.0285862 | 0.0080289 | 0 | 0.0229553 | 0 | 0 | 0 | 0.0019309 | 0.0017406 | 0 |
| Bladder | 0.0919327 | 0 | 0 | 0 | 0.0020077 | 0.0615959 | 0.0231869 | 0 | 0 | 0 | 0 | 0.0191017 | 0 | 0 | 0 | 0.0096687 | 0.0269617 | 0.0475525 | 0.0142169 | 0 | 0 | 0.0951534 | 0.0795075 | 0.1865070 | 0.1230303 | 0.0067823 | 0 | 0.0362015 | 0 | 0.0201516 | 0.0207286 | 0 | 0.0432900 | 0.0017130 | 0 | 0 | 0 | 0.0031619 | 0.0139205 | 0.0098921 | 0.0287183 | 0.0080295 | 0 | 0.0232473 | 0 | 0 | 0 | 0.0019756 | 0.0017650 | 0 |
| Bone | 0.0926678 | 0 | 0 | 0 | 0.0018230 | 0.0615509 | 0.0233208 | 0 | 0 | 0 | 0 | 0.0192197 | 0 | 0 | 0 | 0.0096625 | 0.0272786 | 0.0472760 | 0.0144995 | 0 | 0 | 0.0945219 | 0.0789679 | 0.1860097 | 0.1231227 | 0.0065785 | 0 | 0.0363749 | 0 | 0.0204568 | 0.0207835 | 0 | 0.0430946 | 0.0017387 | 0 | 0 | 0 | 0.0032401 | 0.0140622 | 0.0098173 | 0.0283094 | 0.0080615 | 0 | 0.0238386 | 0 | 0 | 0 | 0.0020141 | 0.0017087 | 0 |
head(canonicForm(mcCancer)) %>%
kable( caption = "Forma canónica. Progresión metastásica.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Bladder | Bone | Brain | Diaphragm | Gallbladder | Heart | Kidney | Lg.Intestine | Liver | Lung | LN..reg. | LN..dist. | Omentum | Pancreas | Pericardium | Peritoneum | Pleura | Prostate | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Thyroid | Uterus | Vagina | Anus | Appendix | Bile.Duct | Branchial.Cyst | Breast | Cervix | Colon | Duodenum | Esophagus | Eye | Larynx | Lip | Ovaries | Penis | Pharynx | Rectum | Retroperitoneum | Salivary | Testes | Tongue | Tonsil | Unknown | Vulva | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Adrenal | 0.0929191 | 0.0017816 | 0.0616255 | 0.0230358 | 0.0190903 | 0.0096325 | 0.0265072 | 0.0469276 | 0.0141380 | 0.0951544 | 0.0791280 | 0.1869619 | 0.1230210 | 0.0067250 | 0.0371970 | 0.0203339 | 0.0203435 | 0.0435043 | 0.0016625 | 0.0031316 | 0.0136254 | 0.0098825 | 0.0286261 | 0.0078899 | 0.0237367 | 0.0016956 | 0.0017230 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Bladder | 0.0919327 | 0.0020077 | 0.0615959 | 0.0231869 | 0.0191017 | 0.0096687 | 0.0269617 | 0.0475525 | 0.0142169 | 0.0951534 | 0.0795075 | 0.1865070 | 0.1230303 | 0.0067823 | 0.0362015 | 0.0201516 | 0.0207286 | 0.0432900 | 0.0017130 | 0.0031619 | 0.0139205 | 0.0098921 | 0.0287183 | 0.0080295 | 0.0232473 | 0.0019756 | 0.0017650 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Bone | 0.0926678 | 0.0018230 | 0.0615509 | 0.0233208 | 0.0192197 | 0.0096625 | 0.0272786 | 0.0472760 | 0.0144995 | 0.0945219 | 0.0789679 | 0.1860097 | 0.1231227 | 0.0065785 | 0.0363749 | 0.0204568 | 0.0207835 | 0.0430946 | 0.0017387 | 0.0032401 | 0.0140622 | 0.0098173 | 0.0283094 | 0.0080615 | 0.0238386 | 0.0020141 | 0.0017087 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Brain | 0.0917026 | 0.0018899 | 0.0615215 | 0.0229960 | 0.0190460 | 0.0096656 | 0.0269088 | 0.0465502 | 0.0142289 | 0.0948047 | 0.0801861 | 0.1865351 | 0.1231261 | 0.0068138 | 0.0363663 | 0.0204128 | 0.0211525 | 0.0431519 | 0.0017491 | 0.0031613 | 0.0137913 | 0.0098879 | 0.0287511 | 0.0079998 | 0.0238264 | 0.0020315 | 0.0017428 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Diaphragm | 0.0931039 | 0.0018138 | 0.0616413 | 0.0229655 | 0.0191744 | 0.0097208 | 0.0266001 | 0.0467584 | 0.0143856 | 0.0944367 | 0.0791427 | 0.1870597 | 0.1231858 | 0.0067348 | 0.0361952 | 0.0203468 | 0.0211007 | 0.0433022 | 0.0017004 | 0.0031210 | 0.0135673 | 0.0099465 | 0.0286316 | 0.0080780 | 0.0236546 | 0.0019179 | 0.0017143 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Gallbladder | 0.0921744 | 0.0019209 | 0.0616074 | 0.0235536 | 0.0190130 | 0.0097391 | 0.0266360 | 0.0466920 | 0.0141716 | 0.0955536 | 0.0789923 | 0.1870779 | 0.1231655 | 0.0069375 | 0.0361612 | 0.0201324 | 0.0213377 | 0.0431730 | 0.0017307 | 0.0032489 | 0.0134765 | 0.0098412 | 0.0284841 | 0.0079818 | 0.0235832 | 0.0019211 | 0.0016936 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
La extracción de la matriz fundamental se muestra en la Tabla 17.
require(matlab)
mcObj <- canonicForm(object = mcCancer)
#indices de transientes y absorbentes
transIdx <- which(states(mcObj) %in% transientStates(mcObj))
absIdx <- which(states(mcObj) %in% absorbingStates(mcObj))
#matrices Q, R y I
Q <- as.matrix(mcObj@transitionMatrix[transIdx,transIdx])
R <- as.matrix(mcObj@transitionMatrix[transIdx,absIdx])
I <- as.matrix(mcObj@transitionMatrix[absIdx, absIdx])
N <- solve(eye(size(Q)) - Q)
head(N) %>%
kable( caption = "Matriz fundamental. Progresión metastásica.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Anus | Appendix | Bile.Duct | Branchial.Cyst | Breast | Cervix | Colon | Duodenum | Esophagus | Eye | Larynx | Lip | Ovaries | Penis | Pharynx | Rectum | Retroperitoneum | Salivary | Testes | Tongue | Tonsil | Unknown | Vulva | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Anus | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Appendix | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Bile.Duct | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Branchial.Cyst | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Breast | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Cervix | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
#probabilidades absorbentes finales
#NR <- N %*% R
Si una cadena es irreducible, todos sus estados comparten la misma periodicidad. Luego, la función de período devuelve la periodicidad de la cadena, siempre que sea irreducible.
La ausencia de irreducibilidad y la periodicidad en la progresión de metástasis se muestran en las Tablas 18 y 19.
is.irreducible(mcCancer) %>%
kable( caption = "Irreducibilidad.", col.names = "is.irreducible") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| is.irreducible |
|---|
| FALSE |
period(mcCancer) %>%
kable( caption = "Periodicidad.", col.names = "period") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| period |
|---|
| 0 |
La distribución del tiempo de primer paso muestra que la probabilidad de que ocurra la primera metástasis al hígado en el segundo paso es de \(0.085\) (Tabla 19).
firstPassage(mcCancer, state="Liver", 5) %>%
kable( caption = "Primer paso.") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| Adrenal | Anus | Appendix | Bile.Duct | Bladder | Bone | Brain | Branchial.Cyst | Breast | Cervix | Colon | Diaphragm | Duodenum | Esophagus | Eye | Gallbladder | Heart | Kidney | Lg.Intestine | Larynx | Lip | Liver | Lung | LN..reg. | LN..dist. | Omentum | Ovaries | Pancreas | Penis | Pericardium | Peritoneum | Pharynx | Pleura | Prostate | Rectum | Retroperitoneum | Salivary | Skeletal.Musc | Skin | Sm.Intestine | Spleen | Stomach | Testes | Thyroid | Tongue | Tonsil | Unknown | Uterus | Vagina | Vulva |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0.0915045 | 0 | 0 | 0 | 0.0017647 | 0.0615666 | 0.0236027 | 0 | 0 | 0 | 0 | 0.0191214 | 0 | 0 | 0 | 0.0096460 | 0.0269993 | 0.0473609 | 0.0141789 | 0 | 0 | 0.0944621 | 0.0804062 | 0.1869680 | 0.1230619 | 0.0067273 | 0 | 0.0364735 | 0 | 0.0205429 | 0.0205432 | 0 | 0.0431378 | 0.0016915 | 0 | 0 | 0 | 0.0031631 | 0.0139448 | 0.0097488 | 0.0286356 | 0.0080074 | 0 | 0.0233520 | 0 | 0 | 0 | 0.0016751 | 0.0017138 | 0 |
| 0.0869231 | 0 | 0 | 0 | 0.0016063 | 0.0575937 | 0.0237178 | 0 | 0 | 0 | 0 | 0.0190259 | 0 | 0 | 0 | 0.0095996 | 0.0267852 | 0.0462936 | 0.0143486 | 0 | 0 | 0.0847358 | 0.0732724 | 0.1491891 | 0.1076189 | 0.0064068 | 0 | 0.0358696 | 0 | 0.0206040 | 0.0189048 | 0 | 0.0417553 | 0.0016103 | 0 | 0 | 0 | 0.0032232 | 0.0127022 | 0.0095919 | 0.0282760 | 0.0080165 | 0 | 0.0237120 | 0 | 0 | 0 | 0.0016068 | 0.0016095 | 0 |
| 0.0785076 | 0 | 0 | 0 | 0.0016103 | 0.0540659 | 0.0231133 | 0 | 0 | 0 | 0 | 0.0186497 | 0 | 0 | 0 | 0.0095053 | 0.0260177 | 0.0439880 | 0.0141302 | 0 | 0 | 0.0768498 | 0.0674337 | 0.1219284 | 0.0944227 | 0.0063762 | 0 | 0.0345087 | 0 | 0.0201507 | 0.0185921 | 0 | 0.0399224 | 0.0016107 | 0 | 0 | 0 | 0.0032098 | 0.0125673 | 0.0095053 | 0.0274368 | 0.0079471 | 0 | 0.0231133 | 0 | 0 | 0 | 0.0016104 | 0.0016107 | 0 |
| 0.0710079 | 0 | 0 | 0 | 0.0016075 | 0.0507472 | 0.0225532 | 0 | 0 | 0 | 0 | 0.0182883 | 0 | 0 | 0 | 0.0094132 | 0.0253031 | 0.0418545 | 0.0139249 | 0 | 0 | 0.0696534 | 0.0620607 | 0.0995303 | 0.0828334 | 0.0063347 | 0 | 0.0332256 | 0 | 0.0197277 | 0.0182308 | 0 | 0.0381810 | 0.0016080 | 0 | 0 | 0 | 0.0031996 | 0.0124043 | 0.0094130 | 0.0266390 | 0.0078830 | 0 | 0.0225532 | 0 | 0 | 0 | 0.0016076 | 0.0016080 | 0 |
| 0.0642222 | 0 | 0 | 0 | 0.0016049 | 0.0476323 | 0.0220060 | 0 | 0 | 0 | 0 | 0.0179337 | 0 | 0 | 0 | 0.0093220 | 0.0246073 | 0.0398231 | 0.0137224 | 0 | 0 | 0.0631320 | 0.0571158 | 0.0812503 | 0.0726669 | 0.0062938 | 0 | 0.0319896 | 0 | 0.0193131 | 0.0178780 | 0 | 0.0365153 | 0.0016054 | 0 | 0 | 0 | 0.0031892 | 0.0122442 | 0.0093217 | 0.0258640 | 0.0078193 | 0 | 0.0220062 | 0 | 0 | 0 | 0.0016050 | 0.0016054 | 0 |
Sin embargo, al no ser irreducible la cadena de progresión de cáncer, no se pueden encontrar los tiempos medios del primer paso.
El primer tiempo de recurrencia medio (número esperado de pasos para volver a un estado si fuera el inicial) para cada estado recurrente en la matriz de probabilidades de transición de cáncer se muesra en la Tabla 21.
meanRecurrenceTime(mcCancer) %>%
kable( caption = "Tiempo de recurrencia medio.", col.names = "meanRecurrenceTime") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| meanRecurrenceTime | |
|---|---|
| Adrenal | 10.491581 |
| Bladder | 618.759801 |
| Bone | 16.289277 |
| Brain | 41.267798 |
| Diaphragm | 51.585138 |
| Gallbladder | 103.174090 |
| Heart | 36.412635 |
| Kidney | 20.633592 |
| Lg.Intestine | 68.781030 |
| Liver | 10.672323 |
| Lung | 12.895707 |
| LN..reg. | 5.429796 |
| LN..dist. | 8.144680 |
| Omentum | 154.734805 |
| Pancreas | 26.913507 |
| Pericardium | 47.616910 |
| Peritoneum | 51.581613 |
| Pleura | 22.926256 |
| Prostate | 618.762625 |
| Skeletal.Musc | 309.567966 |
| Skin | 77.371159 |
| Sm.Intestine | 103.159867 |
| Spleen | 34.389665 |
| Stomach | 123.810749 |
| Thyroid | 41.267796 |
| Uterus | 618.761182 |
| Vagina | 618.761870 |
La base de datos y la aplicación original del ejemplo de cáncer de pulmón la presenta Paul K. Newton (2012).
Se puede hacer inferencia en cadenas a partir de datos y simularlas. Para una secuencia determinada de la progresión de cáncer, se ajusta una cadena con las siguientes estimaciones:
markovchainFit(rmarkovchain(100,mcCancer))$estimate
## MLE Fit
## A 18 - dimensional discrete Markov Chain defined by the following states:
## Adrenal, Bone, Brain, Diaphragm, Kidney, LN..dist., LN..reg., Lg.Intestine, Liver, Lung, Pancreas, Pericardium, Peritoneum, Pleura, Skeletal.Musc, Skin, Stomach, Thyroid
## The transition matrix (by rows) is defined as follows:
## Adrenal Bone Brain Diaphragm Kidney LN..dist.
## Adrenal 0.10000000 0.0000000 0.00000000 0.00 0.10000000 0.10000000
## Bone 0.10000000 0.0000000 0.00000000 0.00 0.00000000 0.10000000
## Brain 0.00000000 0.0000000 0.00000000 0.00 0.00000000 1.00000000
## Diaphragm 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.00000000
## Kidney 0.00000000 0.5000000 0.00000000 0.25 0.00000000 0.25000000
## LN..dist. 0.20000000 0.1000000 0.00000000 0.00 0.00000000 0.20000000
## LN..reg. 0.15000000 0.1500000 0.00000000 0.00 0.00000000 0.00000000
## Lg.Intestine 0.00000000 0.0000000 0.00000000 0.00 0.00000000 1.00000000
## Liver 0.06666667 0.0000000 0.06666667 0.00 0.06666667 0.06666667
## Lung 0.14285714 0.1428571 0.00000000 0.00 0.14285714 0.14285714
## Pancreas 0.00000000 0.3333333 0.00000000 0.00 0.33333333 0.00000000
## Pericardium 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.00000000
## Peritoneum 0.00000000 0.5000000 0.00000000 0.00 0.00000000 0.00000000
## Pleura 0.20000000 0.2000000 0.00000000 0.00 0.00000000 0.00000000
## Skeletal.Musc 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.00000000
## Skin 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.33333333
## Stomach 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.00000000
## Thyroid 0.00000000 0.0000000 0.00000000 0.00 0.00000000 0.00000000
## LN..reg. Lg.Intestine Liver Lung Pancreas
## Adrenal 0.3000000 0.0 0.10000000 0.20000000 0.00000000
## Bone 0.2000000 0.1 0.10000000 0.20000000 0.00000000
## Brain 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## Diaphragm 1.0000000 0.0 0.00000000 0.00000000 0.00000000
## Kidney 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## LN..dist. 0.3000000 0.1 0.00000000 0.10000000 0.00000000
## LN..reg. 0.2500000 0.0 0.30000000 0.05000000 0.05000000
## Lg.Intestine 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## Liver 0.2666667 0.0 0.06666667 0.06666667 0.06666667
## Lung 0.1428571 0.0 0.14285714 0.00000000 0.14285714
## Pancreas 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## Pericardium 0.0000000 0.0 0.33333333 0.00000000 0.00000000
## Peritoneum 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## Pleura 0.0000000 0.0 0.40000000 0.00000000 0.00000000
## Skeletal.Musc 0.0000000 0.0 1.00000000 0.00000000 0.00000000
## Skin 0.0000000 0.0 0.33333333 0.00000000 0.00000000
## Stomach 0.0000000 0.0 0.00000000 0.00000000 0.00000000
## Thyroid 1.0000000 0.0 0.00000000 0.00000000 0.00000000
## Pericardium Peritoneum Pleura Skeletal.Musc Skin
## Adrenal 0.00 0.00000000 0.1000000 0 0.00000000
## Bone 0.00 0.00000000 0.0000000 0 0.20000000
## Brain 0.00 0.00000000 0.0000000 0 0.00000000
## Diaphragm 0.00 0.00000000 0.0000000 0 0.00000000
## Kidney 0.00 0.00000000 0.0000000 0 0.00000000
## LN..dist. 0.00 0.00000000 0.0000000 0 0.00000000
## LN..reg. 0.05 0.00000000 0.0000000 0 0.00000000
## Lg.Intestine 0.00 0.00000000 0.0000000 0 0.00000000
## Liver 0.00 0.06666667 0.1333333 0 0.06666667
## Lung 0.00 0.00000000 0.0000000 0 0.00000000
## Pancreas 0.00 0.00000000 0.3333333 0 0.00000000
## Pericardium 0.00 0.33333333 0.0000000 0 0.00000000
## Peritoneum 0.50 0.00000000 0.0000000 0 0.00000000
## Pleura 0.00 0.00000000 0.2000000 0 0.00000000
## Skeletal.Musc 0.00 0.00000000 0.0000000 0 0.00000000
## Skin 0.00 0.00000000 0.0000000 0 0.00000000
## Stomach 1.00 0.00000000 0.0000000 0 0.00000000
## Thyroid 0.00 0.00000000 0.0000000 0 0.00000000
## Stomach Thyroid
## Adrenal 0.0000000 0.0000000
## Bone 0.0000000 0.0000000
## Brain 0.0000000 0.0000000
## Diaphragm 0.0000000 0.0000000
## Kidney 0.0000000 0.0000000
## LN..dist. 0.0000000 0.0000000
## LN..reg. 0.0000000 0.0000000
## Lg.Intestine 0.0000000 0.0000000
## Liver 0.0000000 0.0000000
## Lung 0.0000000 0.0000000
## Pancreas 0.0000000 0.0000000
## Pericardium 0.0000000 0.3333333
## Peritoneum 0.0000000 0.0000000
## Pleura 0.0000000 0.0000000
## Skeletal.Musc 0.0000000 0.0000000
## Skin 0.3333333 0.0000000
## Stomach 0.0000000 0.0000000
## Thyroid 0.0000000 0.0000000
Con matriz inferior (al \(.95\) nivel de confianza):
markovchainFit(rmarkovchain(100,mcCancer))$lowerEndpointMatrix
## Adrenal Bone Brain Diaphragm Gallbladder Heart Kidney LN..dist.
## Adrenal 0 0 0 0 0 0 0 0
## Bone 0 0 0 0 0 0 0 0
## Brain 0 0 0 0 0 0 0 0
## Diaphragm 0 0 0 0 0 0 0 0
## Gallbladder 0 0 0 0 0 0 0 0
## Heart 0 0 0 0 0 0 0 0
## Kidney 0 0 0 0 0 0 0 0
## LN..dist. 0 0 0 0 0 0 0 0
## LN..reg. 0 0 0 0 0 0 0 0
## Lg.Intestine 0 0 0 0 0 0 0 0
## Liver 0 0 0 0 0 0 0 0
## Lung 0 0 0 0 0 0 0 0
## Pancreas 0 0 0 0 0 0 0 0
## Peritoneum 0 0 0 0 0 0 0 0
## Pleura 0 0 0 0 0 0 0 0
## Skin 0 0 0 0 0 0 0 0
## Sm.Intestine 0 0 0 0 0 0 0 0
## Thyroid 0 0 0 0 0 0 0 0
## Uterus 0 0 0 0 0 0 0 0
## Vagina 0 0 0 0 0 0 0 0
## LN..reg. Lg.Intestine Liver Lung Pancreas Peritoneum Pleura Skin
## Adrenal 0 0 0 0 0 0 0 0
## Bone 0 0 0 0 0 0 0 0
## Brain 0 0 0 0 0 0 0 0
## Diaphragm 0 0 0 0 0 0 0 0
## Gallbladder 0 0 0 0 0 0 0 0
## Heart 0 0 0 0 0 0 0 0
## Kidney 0 0 0 0 0 0 0 0
## LN..dist. 0 0 0 0 0 0 0 0
## LN..reg. 0 0 0 0 0 0 0 0
## Lg.Intestine 0 0 0 0 0 0 0 0
## Liver 0 0 0 0 0 0 0 0
## Lung 0 0 0 0 0 0 0 0
## Pancreas 0 0 0 0 0 0 0 0
## Peritoneum 0 0 0 0 0 0 0 0
## Pleura 0 0 0 0 0 0 0 0
## Skin 0 0 0 0 0 0 0 0
## Sm.Intestine 0 0 0 0 0 0 0 0
## Thyroid 0 0 0 0 0 0 0 0
## Uterus 0 0 0 0 0 0 0 0
## Vagina 0 0 0 0 0 0 0 0
## Sm.Intestine Thyroid Uterus Vagina
## Adrenal 0 0 0 0
## Bone 0 0 0 0
## Brain 0 0 0 0
## Diaphragm 0 0 0 0
## Gallbladder 0 0 0 0
## Heart 0 0 0 0
## Kidney 0 0 0 0
## LN..dist. 0 0 0 0
## LN..reg. 0 0 0 0
## Lg.Intestine 0 0 0 0
## Liver 0 0 0 0
## Lung 0 0 0 0
## Pancreas 0 0 0 0
## Peritoneum 0 0 0 0
## Pleura 0 0 0 0
## Skin 0 0 0 0
## Sm.Intestine 0 0 0 0
## Thyroid 0 0 0 0
## Uterus 0 0 0 0
## Vagina 0 0 0 0
Y matriz superior (\(.95\)):
markovchainFit(rmarkovchain(100,mcCancer))$upperEndpointMatrix
## Adrenal Bone Brain Diaphragm Gallbladder Heart
## Adrenal 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2959964
## Bone 0.6816869 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Brain 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Diaphragm 0.0000000 0.0000000 0.0000000 0.0000000 0.9866548 0.0000000
## Gallbladder 1.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000
## Heart 0.0000000 0.7399911 0.0000000 0.7399911 0.0000000 0.0000000
## Kidney 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## LN..dist. 0.3288849 0.3288849 0.0000000 0.0000000 0.0000000 0.0000000
## LN..reg. 0.2906708 0.2169004 0.1345438 0.1345438 0.1345438 0.0000000
## Lg.Intestine 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Liver 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.4933274
## Lung 0.0000000 0.0000000 0.5919929 0.0000000 0.0000000 0.0000000
## Omentum 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pancreas 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.4933274
## Pericardium 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Peritoneum 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pleura 0.0000000 0.7399911 0.0000000 0.0000000 0.0000000 0.7399911
## Prostate 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Skin 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Sm.Intestine 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Spleen 0.0000000 0.9866548 0.0000000 0.0000000 0.0000000 0.0000000
## Thyroid 0.9866548 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Vagina 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Kidney LN..dist. LN..reg. Lg.Intestine Liver Lung
## Adrenal 0.2959964 0.0000000 0.6394758 0 0.0000000 0.2959964
## Bone 0.0000000 0.9135368 0.4228521 0 0.4228521 0.0000000
## Brain 0.0000000 0.0000000 0.0000000 1 0.0000000 0.0000000
## Diaphragm 0.0000000 0.0000000 0.9866548 0 0.0000000 0.0000000
## Gallbladder 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Heart 0.0000000 0.7399911 0.0000000 0 0.0000000 0.7399911
## Kidney 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## LN..dist. 0.0000000 0.3288849 0.5302009 0 0.0000000 0.0000000
## LN..reg. 0.0000000 0.2906708 0.2906708 0 0.2169004 0.1345438
## Lg.Intestine 0.0000000 0.0000000 1.0000000 0 0.0000000 0.0000000
## Liver 0.0000000 0.4933274 1.0000000 0 0.0000000 0.0000000
## Lung 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Omentum 0.0000000 0.0000000 0.0000000 0 1.0000000 0.0000000
## Pancreas 0.4933274 0.0000000 1.0000000 0 0.0000000 0.0000000
## Pericardium 0.0000000 0.0000000 0.0000000 0 1.0000000 0.0000000
## Peritoneum 0.0000000 0.0000000 0.0000000 0 1.0000000 0.0000000
## Pleura 0.0000000 0.0000000 1.0000000 0 0.0000000 0.0000000
## Prostate 0.0000000 0.0000000 1.0000000 0 0.0000000 0.0000000
## Skin 0.0000000 0.0000000 0.0000000 0 0.0000000 1.0000000
## Sm.Intestine 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Spleen 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Thyroid 0.0000000 0.0000000 0.9866548 0 0.0000000 0.0000000
## Vagina 0.0000000 0.0000000 1.0000000 0 0.0000000 0.0000000
## Omentum Pancreas Pericardium Peritoneum Pleura Prostate
## Adrenal 0.0000000 0.2959964 0.0000000 0.0000000 0.4771808 0.0000000
## Bone 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Brain 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Diaphragm 0.0000000 0.0000000 0.0000000 0.0000000 0.9866548 0.0000000
## Gallbladder 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Heart 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Kidney 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000
## LN..dist. 0.3288849 0.3288849 0.0000000 0.0000000 0.0000000 0.0000000
## LN..reg. 0.1345438 0.0000000 0.1345438 0.0000000 0.1345438 0.0000000
## Lg.Intestine 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Liver 0.0000000 0.4933274 0.0000000 0.0000000 0.0000000 0.0000000
## Lung 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.5919929
## Omentum 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pancreas 0.0000000 0.4933274 0.0000000 0.0000000 0.0000000 0.0000000
## Pericardium 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Peritoneum 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pleura 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Prostate 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Skin 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Sm.Intestine 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Spleen 0.0000000 0.9866548 0.0000000 0.0000000 0.0000000 0.0000000
## Thyroid 0.0000000 0.0000000 0.0000000 0.9866548 0.0000000 0.0000000
## Vagina 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Skin Sm.Intestine Spleen Thyroid Vagina
## Adrenal 0.0000000 0.0000000 0.0000000 0.0000000 0.2959964
## Bone 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Brain 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Diaphragm 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Gallbladder 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Heart 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Kidney 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## LN..dist. 0.0000000 0.0000000 0.3288849 0.3288849 0.0000000
## LN..reg. 0.0000000 0.0000000 0.0000000 0.2169004 0.0000000
## Lg.Intestine 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Liver 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Lung 0.5919929 0.5919929 0.0000000 0.5919929 0.0000000
## Omentum 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000
## Pancreas 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pericardium 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Peritoneum 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Pleura 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Prostate 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Skin 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Sm.Intestine 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Spleen 0.0000000 0.0000000 0.9866548 0.0000000 0.0000000
## Thyroid 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
## Vagina 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
La estimación por defecto se basa en la Ecuación (4) que muestra al estimador de máxima verosimilitud (MLE) de la entrada \(p_{ij}\), donde el elemento \(n_{ij}\) consiste en las secuencias numéricas \((X_t = s_i, X_{t + 1} = s_j)\) encontradas en la muestra, es decir
\[\begin{equation} \widehat{p}_{ij}^{MLE} = \frac{n_{ij}}{\sum_{u=1}^k n_{iu}}. \tag{4} \end{equation}\]
La Ecuación (5) muestra el error estándar del MLE.
\[\begin{equation} SE_{ij} = \frac{\widehat{p}_{ij}^{MLE}}{\sqrt{n_{ij}}}. \tag{5} \end{equation}\]
El enfoque de suavizado de Laplace es una variación del MLE, donde \(n_{ij}\) se sustituye por \(n_{ij} + α\) (Ecuación (6)), siendo \(α\) un parámetro estabilizador positivo arbitrario.
\[\begin{equation} \widehat{p}_{ij}^{LS} = \frac{n_{ij}+\alpha}{\sum_{u=1}^k (n_{iu}+\alpha)}. \tag{6} \end{equation}\]
Bajo este enfoque la resultante es:
markovchainFit(rmarkovchain(100,mcCancer),method = "laplace")$estimate
## Laplacian Smooth Fit
## A 21 - dimensional discrete Markov Chain defined by the following states:
## Adrenal, Bone, Brain, Diaphragm, Gallbladder, Heart, Kidney, LN..dist., LN..reg., Lg.Intestine, Liver, Lung, Omentum, Pancreas, Pericardium, Peritoneum, Pleura, Prostate, Spleen, Stomach, Thyroid
## The transition matrix (by rows) is defined as follows:
## Adrenal Bone Brain Diaphragm Gallbladder Heart
## Adrenal 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Bone 0.0000000 0.0000 0.0000000 0.2500 0.0000 0.0000000
## Brain 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Diaphragm 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Gallbladder 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Heart 0.3333333 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Kidney 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.3333333
## LN..dist. 0.0625000 0.1250 0.0625000 0.0000 0.0625 0.1250000
## LN..reg. 0.0000000 0.0625 0.0625000 0.0625 0.0000 0.0000000
## Lg.Intestine 0.0000000 0.0000 0.0000000 1.0000 0.0000 0.0000000
## Liver 0.1111111 0.0000 0.2222222 0.0000 0.0000 0.0000000
## Lung 0.1250000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Omentum 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Pancreas 0.0000000 0.0000 0.2000000 0.0000 0.0000 0.0000000
## Pericardium 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Peritoneum 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Pleura 0.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Prostate 1.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Spleen 0.0000000 0.0000 0.6666667 0.0000 0.0000 0.0000000
## Stomach 1.0000000 0.0000 0.0000000 0.0000 0.0000 0.0000000
## Thyroid 0.0000000 0.5000 0.0000000 0.0000 0.0000 0.0000000
## Kidney LN..dist. LN..reg. Lg.Intestine Liver Lung
## Adrenal 0.0000000 0.4000000 0.2000000 0 0.2000000 0.0000000
## Bone 0.0000000 0.5000000 0.0000000 0 0.2500000 0.0000000
## Brain 0.1428571 0.1428571 0.2857143 0 0.0000000 0.1428571
## Diaphragm 0.0000000 0.0000000 0.3333333 0 0.3333333 0.0000000
## Gallbladder 0.0000000 0.0000000 0.0000000 1 0.0000000 0.0000000
## Heart 0.0000000 0.3333333 0.0000000 0 0.0000000 0.0000000
## Kidney 0.0000000 0.0000000 0.0000000 0 0.0000000 0.3333333
## LN..dist. 0.0000000 0.0625000 0.1250000 0 0.1250000 0.1250000
## LN..reg. 0.1250000 0.1250000 0.1875000 0 0.0625000 0.1250000
## Lg.Intestine 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Liver 0.0000000 0.1111111 0.0000000 0 0.0000000 0.2222222
## Lung 0.0000000 0.1250000 0.3750000 0 0.0000000 0.0000000
## Omentum 0.0000000 1.0000000 0.0000000 0 0.0000000 0.0000000
## Pancreas 0.0000000 0.4000000 0.2000000 0 0.2000000 0.0000000
## Pericardium 0.0000000 0.3333333 0.0000000 0 0.0000000 0.0000000
## Peritoneum 0.0000000 0.0000000 1.0000000 0 0.0000000 0.0000000
## Pleura 0.0000000 0.1666667 0.3333333 0 0.3333333 0.0000000
## Prostate 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Spleen 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Stomach 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Thyroid 0.0000000 0.0000000 0.0000000 0 0.0000000 0.0000000
## Omentum Pancreas Pericardium Peritoneum Pleura Prostate
## Adrenal 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Bone 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Brain 0.0 0.0000000 0.0000000 0.0000000 0.1428571 0.0000
## Diaphragm 0.0 0.0000000 0.0000000 0.0000000 0.3333333 0.0000
## Gallbladder 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Heart 0.0 0.0000000 0.0000000 0.3333333 0.0000000 0.0000
## Kidney 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## LN..dist. 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0625
## LN..reg. 0.0 0.0625000 0.0625000 0.0000000 0.0625000 0.0000
## Lg.Intestine 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Liver 0.0 0.1111111 0.1111111 0.0000000 0.1111111 0.0000
## Lung 0.0 0.2500000 0.0000000 0.0000000 0.0000000 0.0000
## Omentum 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Pancreas 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Pericardium 0.0 0.0000000 0.3333333 0.0000000 0.3333333 0.0000
## Peritoneum 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Pleura 0.0 0.0000000 0.0000000 0.0000000 0.1666667 0.0000
## Prostate 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Spleen 0.0 0.3333333 0.0000000 0.0000000 0.0000000 0.0000
## Stomach 0.0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Thyroid 0.5 0.0000000 0.0000000 0.0000000 0.0000000 0.0000
## Spleen Stomach Thyroid
## Adrenal 0.0000000 0.0000000 0.2000
## Bone 0.0000000 0.0000000 0.0000
## Brain 0.1428571 0.0000000 0.0000
## Diaphragm 0.0000000 0.0000000 0.0000
## Gallbladder 0.0000000 0.0000000 0.0000
## Heart 0.0000000 0.0000000 0.0000
## Kidney 0.0000000 0.3333333 0.0000
## LN..dist. 0.0000000 0.0000000 0.0625
## LN..reg. 0.0000000 0.0000000 0.0000
## Lg.Intestine 0.0000000 0.0000000 0.0000
## Liver 0.0000000 0.0000000 0.0000
## Lung 0.1250000 0.0000000 0.0000
## Omentum 0.0000000 0.0000000 0.0000
## Pancreas 0.0000000 0.0000000 0.0000
## Pericardium 0.0000000 0.0000000 0.0000
## Peritoneum 0.0000000 0.0000000 0.0000
## Pleura 0.0000000 0.0000000 0.0000
## Prostate 0.0000000 0.0000000 0.0000
## Spleen 0.0000000 0.0000000 0.0000
## Stomach 0.0000000 0.0000000 0.0000
## Thyroid 0.0000000 0.0000000 0.0000
Una estimación por medio de bootstrap sigue estos pasos:
La estimación por bootsrap es:
markovchainFit(rmarkovchain(100,mcCancer),method = "bootstrap")$estimate
## BootStrap Estimate
## A 18 - dimensional discrete Markov Chain defined by the following states:
## Adrenal, Bone, Brain, Heart, Kidney, LN..dist., LN..reg., Lg.Intestine, Liver, Lung, Omentum, Pancreas, Peritoneum, Pleura, Skin, Spleen, Stomach, Thyroid
## The transition matrix (by rows) is defined as follows:
## Adrenal Bone Brain Heart Kidney LN..dist.
## Adrenal 0.00000000 0.14349567 0.000000000 0.00000000 0.00000000 0.12619048
## Bone 0.00000000 0.00000000 0.000000000 0.00000000 0.06357143 0.12555556
## Brain 0.00000000 0.00000000 0.000000000 0.00000000 0.00000000 0.00000000
## Heart 0.00000000 0.00000000 0.000000000 0.00000000 0.00000000 0.00000000
## Kidney 0.00000000 0.12190476 0.000000000 0.00000000 0.00000000 0.00000000
## LN..dist. 0.03967033 0.21205128 0.007142857 0.00000000 0.00000000 0.08609890
## LN..reg. 0.12847770 0.08117251 0.000000000 0.09012266 0.01640867 0.07080037
## Lg.Intestine 0.07063743 0.11899346 0.000000000 0.00000000 0.05000000 0.02057534
## Liver 0.21137566 0.07420635 0.000000000 0.12500000 0.08333333 0.00000000
## Lung 0.22211180 0.05565217 0.000000000 0.04173913 0.04720497 0.01490683
## Omentum 0.06722222 0.00000000 0.000000000 0.02000000 0.08027778 0.09027778
## Pancreas 0.17647059 0.02941176 0.000000000 0.03921569 0.00000000 0.08823529
## Peritoneum 0.15789474 0.04210526 0.056140351 0.11578947 0.02105263 0.09824561
## Pleura 0.00000000 0.12619048 0.065000000 0.00000000 0.13166667 0.27000000
## Skin 0.00000000 0.12500000 0.095833333 0.02500000 0.03333333 0.20833333
## Spleen 0.04575758 0.10393939 0.064848485 0.00000000 0.09285714 0.04285714
## Stomach 0.09000000 0.08000000 0.065000000 0.00000000 0.08333333 0.08636364
## Thyroid 0.04333333 0.01666667 0.033333333 0.01000000 0.00000000 0.06000000
## LN..reg. Lg.Intestine Liver Lung Omentum
## Adrenal 0.33282468 0.17398268 0.03095238 0.03000000 0.104220779
## Bone 0.14422078 0.20555556 0.00000000 0.04636364 0.007142857
## Brain 0.00000000 0.12500000 0.00000000 0.00000000 0.000000000
## Heart 0.09000000 0.00000000 0.20000000 0.54000000 0.000000000
## Kidney 0.05000000 0.20333333 0.05000000 0.10000000 0.333333333
## LN..dist. 0.07752747 0.11642857 0.07641026 0.19166667 0.000000000
## LN..reg. 0.20438929 0.12297562 0.01917211 0.02666667 0.024074074
## Lg.Intestine 0.14934004 0.13124871 0.06444444 0.04029102 0.005555556
## Liver 0.07870370 0.04761905 0.00000000 0.04365079 0.166666667
## Lung 0.05565217 0.17118012 0.00000000 0.05565217 0.160993789
## Omentum 0.10000000 0.25472222 0.14000000 0.00000000 0.054722222
## Pancreas 0.00000000 0.35294118 0.07843137 0.11764706 0.000000000
## Peritoneum 0.00000000 0.05263158 0.00000000 0.14035088 0.315789474
## Pleura 0.13095238 0.00000000 0.00000000 0.00000000 0.247619048
## Skin 0.25833333 0.00000000 0.11666667 0.00000000 0.050000000
## Spleen 0.38484848 0.07428571 0.00000000 0.00000000 0.000000000
## Stomach 0.03333333 0.34500000 0.13636364 0.03333333 0.000000000
## Thyroid 0.14000000 0.05000000 0.42333333 0.00000000 0.000000000
## Pancreas Peritoneum Pleura Skin Spleen
## Adrenal 0.00000000 0.000000000 0.00000000 3.333333e-02 2.500000e-02
## Bone 0.04857143 0.000000000 0.03727273 6.214286e-02 1.630952e-01
## Brain 0.00000000 0.000000000 0.15625000 1.666667e-01 3.333333e-01
## Heart 0.00000000 0.000000000 0.05000000 1.200000e-01 4.675373e-311
## Kidney 0.00000000 0.000000000 0.00000000 2.000000e-02 1.214286e-01
## LN..dist. 0.01000000 0.000000000 0.01428571 0.000000e+00 5.871795e-02
## LN..reg. 0.04365079 0.074463938 0.01884532 1.052632e-02 4.444444e-02
## Lg.Intestine 0.02450000 0.005555556 0.05974200 1.103452e-01 9.222222e-02
## Liver 0.11111111 0.000000000 0.00000000 0.000000e+00 5.194855e-311
## Lung 0.01739130 0.000000000 0.00000000 5.217391e-02 6.956522e-02
## Omentum 0.00000000 0.065000000 0.02777778 0.000000e+00 4.675369e-311
## Pancreas 0.00000000 0.000000000 0.00000000 0.000000e+00 5.500434e-311
## Peritoneum 0.00000000 0.000000000 0.00000000 0.000000e+00 4.921441e-311
## Pleura 0.00000000 0.028571429 0.00000000 0.000000e+00 4.675369e-311
## Skin 0.02500000 0.000000000 0.06250000 0.000000e+00 4.675369e-311
## Spleen 0.03333333 0.038181818 0.00000000 1.190909e-01 4.675369e-311
## Stomach 0.00000000 0.027272727 0.02000000 6.100738e-315 4.675369e-311
## Thyroid 0.00000000 0.043333333 0.03000000 1.666667e-02 8.333333e-02
## Stomach Thyroid
## Adrenal 4.675369e-311 9.350742e-311
## Bone 7.650794e-02 2.000000e-02
## Brain 3.125000e-02 1.875000e-01
## Heart 9.350728e-311 1.402611e-310
## Kidney 9.350742e-311 1.402611e-310
## LN..dist. 5.000000e-02 6.000000e-02
## LN..reg. 7.142857e-03 1.666667e-02
## Lg.Intestine 4.421569e-02 1.233333e-02
## Liver 5.833333e-02 1.558456e-310
## Lung 9.757292e-311 3.577640e-02
## Omentum 9.350738e-311 1.000000e-01
## Pancreas 5.500434e-311 1.176471e-01
## Peritoneum 4.922083e-311 1.476433e-310
## Pleura 9.350728e-311 1.402611e-310
## Skin 9.350742e-311 9.350738e-311
## Spleen 9.350742e-311 9.350738e-311
## Stomach 4.675369e-311 1.402611e-310
## Thyroid 5.000000e-02 1.402611e-310
También se proporciona una estimación del error estándar para \(p^{MLE}\):
markovchainFit(rmarkovchain(100,mcCancer),method = "bootstrap")$standardError
## Adrenal Bone Brain Diaphragm Gallbladder
## Adrenal 0.00000000 0.000000000 0.000000000 0.000000000 0.00000000
## Bone 0.00000000 0.000000000 0.100271237 0.000000000 0.00000000
## Brain 0.13102163 0.000000000 0.000000000 0.109636042 0.00000000
## Diaphragm 0.01666667 0.000000000 0.000000000 0.000000000 0.00000000
## Gallbladder 0.11180340 0.000000000 0.016666667 0.000000000 0.00000000
## Heart 0.03648241 0.000000000 0.021901699 0.000000000 0.00000000
## Kidney 0.03263647 0.021234852 0.029716609 0.028604605 0.02809556
## LN..dist. 0.12537403 0.028169065 0.009356834 0.005263158 0.02930220
## LN..reg. 0.10349971 0.028621137 0.000000000 0.000000000 0.05325614
## Liver 0.09721176 0.009898585 0.000000000 0.000000000 0.00000000
## Lung 0.08549782 0.020000000 0.000000000 0.000000000 0.02000000
## Pancreas 0.09032862 0.000000000 0.000000000 0.000000000 0.09977753
## Pericardium 0.09157234 0.000000000 0.000000000 0.000000000 0.00000000
## Pleura 0.10162450 0.000000000 0.000000000 0.000000000 0.00000000
## Sm.Intestine 0.13988090 0.000000000 0.000000000 0.000000000 0.00000000
## Spleen 0.09464847 0.000000000 0.000000000 0.000000000 0.01958695
## Stomach 0.00000000 0.078763594 0.000000000 0.000000000 0.00000000
## Thyroid 0.00000000 0.066666667 0.060000000 0.000000000 0.10034662
## Heart Kidney LN..dist. LN..reg. Liver
## Adrenal 0.019586946 0.06564737 0.07409322 0.05642470 0.03721113
## Bone 0.000000000 0.00000000 0.02500000 0.11666667 0.05130699
## Brain 0.100346621 0.07876359 0.03333333 0.00000000 0.00000000
## Diaphragm 0.133333333 0.15275252 0.13333333 0.00000000 0.00000000
## Gallbladder 0.000000000 0.10161656 0.02000000 0.00000000 0.02000000
## Heart 0.032176848 0.04704086 0.11634676 0.04123026 0.04333333
## Kidney 0.045611904 0.03801788 0.04555355 0.03200116 0.06194223
## LN..dist. 0.025462094 0.04790763 0.03364213 0.02807050 0.01619741
## LN..reg. 0.013425926 0.11576599 0.03761648 0.02874847 0.00000000
## Liver 0.061151445 0.03333333 0.09668623 0.03000158 0.00000000
## Lung 0.000000000 0.04248941 0.02500000 0.02819684 0.02222222
## Pancreas 0.000000000 0.00000000 0.03333333 0.03938180 0.00000000
## Pericardium 0.070272837 0.02500000 0.05692750 0.04444444 0.03333333
## Pleura 0.000000000 0.09869711 0.00000000 0.10540926 0.06938887
## Sm.Intestine 0.000000000 0.00000000 0.05718715 0.00000000 0.10183502
## Spleen 0.070094301 0.05736844 0.02463987 0.03753213 0.00744466
## Stomach 0.021052632 0.04651812 0.11666667 0.03084241 0.03333333
## Thyroid 0.008824714 0.08302541 0.00000000 0.04733145 0.01095087
## Lung Pancreas Pericardium Pleura Sm.Intestine
## Adrenal 0.011168391 0.017108771 0.02430635 0.016008941 0.01969090
## Bone 0.075979204 0.060461190 0.00000000 0.000000000 0.00000000
## Brain 0.000000000 0.000000000 0.00000000 0.000000000 0.00000000
## Diaphragm 0.000000000 0.000000000 0.00000000 0.083333333 0.10000000
## Gallbladder 0.040000000 0.020000000 0.03333333 0.000000000 0.10378039
## Heart 0.000000000 0.060461190 0.00000000 0.044890126 0.00000000
## Kidney 0.038963728 0.007629162 0.00000000 0.004761905 0.02489297
## LN..dist. 0.041790988 0.000000000 0.01759621 0.000000000 0.00000000
## LN..reg. 0.025000000 0.000000000 0.00000000 0.000000000 0.03750000
## Liver 0.019933408 0.044444444 0.06666667 0.000000000 0.00000000
## Lung 0.000000000 0.011111111 0.06455928 0.056927504 0.00000000
## Pancreas 0.000000000 0.000000000 0.00000000 0.095257934 0.07934920
## Pericardium 0.000000000 0.000000000 0.00000000 0.000000000 0.02000000
## Pleura 0.035572912 0.000000000 0.00000000 0.000000000 0.00000000
## Sm.Intestine 0.122222222 0.033333333 0.10000000 0.000000000 0.00000000
## Spleen 0.111076595 0.072656812 0.01052632 0.000000000 0.00000000
## Stomach 0.005263158 0.105587949 0.05000000 0.000000000 0.15275252
## Thyroid 0.008695652 0.008404939 0.01093328 0.000000000 0.00000000
## Spleen Stomach Thyroid
## Adrenal 0.000000e+00 Inf 9.416577e-145
## Bone 0.000000e+00 3.242549e-87 Inf
## Brain 0.000000e+00 1.806087e-154 Inf
## Diaphragm 0.000000e+00 5.981595e-155 3.706338e-82
## Gallbladder 1.000000e-01 Inf 4.370823e-20
## Heart 4.015787e-02 Inf Inf
## Kidney 0.000000e+00 Inf Inf
## LN..dist. Inf 2.247475e-154 Inf
## LN..reg. Inf 5.555556e-03 3.242549e-87
## Liver Inf Inf 1.208250e-154
## Lung 2.122513e-10 Inf 5.981595e-155
## Pancreas 3.706445e-82 Inf Inf
## Pericardium 1.034945e-01 8.794660e-145 Inf
## Pleura Inf Inf Inf
## Sm.Intestine Inf Inf 2.247475e-154
## Spleen Inf 9.416577e-145 3.793942e+106
## Stomach 3.242549e-87 Inf 0.000000e+00
## Thyroid 1.333333e-01 Inf Inf
Para cada método de ajuste se proporciona la log-verosimilitud (Tablas 22, 23 y 24), indicada en la Ecuación (7).
\[\begin{equation} LLH = \sum_{i,j} n_{ij}*\log p_{ij}, \tag{7} \end{equation}\]
donde \(n_{ij}\) es la entrada de la matriz de frecuencias y \(p_{ij}\) es la entrada de la matriz de probabilidad de transición.
markovchainFit(rmarkovchain(100,mcCancer),method = "mle")$logLikelihood %>%
kable( caption = "Log-verosimilitud por MLE.", col.names = "logLikelihood") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| logLikelihood |
|---|
| -159.7801 |
markovchainFit(rmarkovchain(100,mcCancer),method = "laplace")$logLikelihood %>%
kable( caption = "Log-verosimilitud por Laplace.", col.names = "logLikelihood") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| logLikelihood |
|---|
| -166.7528 |
markovchainFit(rmarkovchain(100,mcCancer),method = "bootstrap")$logLikelihood %>%
kable( caption = "Log-verosimilitud por bootsrap.", col.names = "logLikelihood") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| logLikelihood |
|---|
| -Inf |
Posteriormente, se generan las progresiones de tres etapas hacia adelante (Tabla 25), asumiendo que la última etapa fue en el hueso.
predict(markovchainFit(rmarkovchain(100,mcCancer))$estimate, newdata = "Bone", n.ahead = 3) %>%
kable( caption = "Progresión hacia adelante.", col.names = "predict") %>%
kable_styling(bootstrap_options = c("striped", "hover"))
| predict |
|---|
| Kidney |
| LN..reg. |
| LN..dist. |
La estimación consiste en ajustar unas probabilidades de transición a partir de un vector de muestras aleatorias. El ajuste a partir de la secuencia generada anteriormente se vuelve una aproximación a la cadena original (Figura 3):
plot(markovchainFit(rmarkovchain(100,mcCancer))$estimate, main="Aproximación a cadena de Markov.")
Figure 3: Aproximación a la red de propagación
Otras formas de crear funciones para realizar inferencia se encuentran en Clark (2021), así como en las preguntas.
Elevando una matriz de transición a una potencia suficientemente alta (la matriz resultante tiende al estado estacionario), es equivalente a decir que cuando se simula una cadena, las probabilidades de los estados serán estables al alcanzar un número de muestras lo suficientemente elevado, y no van a cambiar por añadir más.
Si se consideran las etapas del pulmón y el hígado en la cadena de progresión, claramente se observan las proporciones de cada estado acumulada en cada paso, contrastando ambas evoluciones contra los valores estacionarios teóricos.
samples <- rmarkovchain(1000, mcCancer)
yC <- cumsum(samples=="Lung") / seq_along(samples)
yF <- cumsum(samples=="Liver") / seq_along(samples)
plot(yC, type="l", col="red", ylim=c(0,1))
lines(yF, col="green")
abline(steadyStates(mcCancer)[1], 0, lty=2, col="red")
abline(steadyStates(mcCancer)[2], 0, lty=2, col="green")
Figure 4: Evolución y convergencia de dos etapas en la progresión metastásica
En la Figura 4 anterior se aprecia que la simulación converge. Para controlar que potencia es lo suficientemente alta para que el número de muestras sea lo suficientemente elevado para asegurar una buena aproximación a la estacionariedad, entra en juego el llamado tiempo de convergencia, que da una idea de a qué velocidad se va a reducir el error conforme avanza el tiempo.
Se define como la suma de las diferencias absolutas entre componentes de dos potencias sucesivas de la matriz de transición, es decir,
\[\begin{equation} \epsilon(n) = \sum_i\sum_j|(P^n)_{ij}-(P^{n-1})_{ij}|. \tag{8} \end{equation}\]
La visualización de este error en la Figura 5 muestra que el error decae exponencialmente.
# Función de error con S4
# @param n: tiempo
# @param mc: cadena
err <- function(n, mc) {
# Valores de entrada sean números naturales
if (!isTRUE(all(n > 0 && n == floor(n))))
stop("'n' must only contain positive integer values")
# Reservamos memoria para la salida
res <- numeric(length(n))
# Para cada valor de entrada calcular err(n)
for (i in 1:length(n)) {
Pn <- (mc^n[i])@transitionMatrix
Pn1 <- (mc^(n[i]-1))@transitionMatrix
res[i] <- sum(abs(Pn - Pn1))
}
return(res)
}
# Representación de la función de error
x <- 1:10
y <- err(x, mcCancer)
plot(x, y, type="o")
Figure 5: Tiempo de convergencia
Un proceso estocástico es una colección indexada de variables aleatorias definidas en algún espacio de probabilidad. El índice a menudo representa el tiempo, que puede ser discreto o continuo.
Un proceso estocástico de tiempo discreto es una colección numerable de variables aleatorias, p. Ej. \(X_n\) para \(n = 0,1,2,….\) Para cada resultado en el espacio de probabilidad, el resultado de un proceso estocástico de tiempo discreto es una secuencia en \(n\) (Python comienza a indexar en 0). El índice de base cero suele ser natural en contextos de procesos estocásticos en los que hay un tiempo \(0\), es decir, \(X_0\) es el valor inicial del proceso.
Un proceso estocástico de tiempo continuo es una colección de innumerables variables aleatorias, p. Ej. \(X_t\) para \(t≥0\). Para cada resultado en el espacio de probabilidad, el resultado de un proceso estocástico de tiempo discreto es una función (también conocida como trayectoria muestral de t).
Al igual que una variable aleatoria (RV), un proceso estocástico (RandomProcess) se puede definir en un espacio de probabilidad (ProbabilitySpace). Sin embargo, para un proceso, también se debe especificar un índice temporal (TimeIndex). Este índice toma un sólo parámetro, la frecuencia de muestreo (fs). Si bien se permiten muchos valores de fs, las dos entradas más comunes son:
TimeIndex (fs = 1), para un proceso de tiempo discreto \(X_n, n = 0,1,2,….\)
TimeIndex (fs = \(\inf\)), para un proceso de tiempo continuo \(X(t), t≥0\).
Una cadena de Markov de tiempo discreto es un proceso estocástico de estado discreto en tiempo discreto que satisface para todo \(n\):
Dado \(X_n\) (el presente), \(X_{n + 1}, X_{n + 2,…}\) (el futuro) es condicionalmente independiente de \(X1_{n − 1}, X_{n − 2},…, X_0\) (“el pasado”).
En Symbulate, una cadena de Markov de tiempo discreto se define con MarkovChain. El comportamiento probabilístico de una cadena de Markov en tiempo discreto está completamente especificado por los siguientes parámetros de MarkovChain:
state_labels: El espacio de estado de los posibles valores del proceso. (El valor predeterminado es etiquetar los estados \(0, 1, 2, ...\))init_dist: La distribución inicial, que especifica la distribución de probabilidad en el tiempo \(0\)
transition_matrix: La matriz de probabilidad de transición de un paso, cuya entrada \(ij\)-ésima especifica la probabilidad de que la cadena esté en el estado \(j\) en el siguiente paso de tiempo dado que actualmente se encuentra en el estado \(i\) (\(P (X_{n + 1} = j | X_n = i)\)). Todas las sumas de las filas deben ser \(1\).Para la comparación de la modelación con simulación para el ejemplo de progresión metastásica, consultar la nota en Jupyter complementaria.
## R version 4.1.1 (2021-08-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 20.04.3 LTS
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
## LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3
##
## locale:
## [1] LC_CTYPE=es_MX.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=es_MX.UTF-8 LC_COLLATE=es_MX.UTF-8
## [5] LC_MONETARY=es_MX.UTF-8 LC_MESSAGES=es_MX.UTF-8
## [7] LC_PAPER=es_MX.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=es_MX.UTF-8 LC_IDENTIFICATION=C
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] matlab_1.0.2 igraph_1.2.6 kableExtra_1.3.4 knitr_1.33
## [5] markovchain_0.8.6 BiocStyle_2.20.2
##
## loaded via a namespace (and not attached):
## [1] Rcpp_1.0.7 bslib_0.2.5.1 compiler_4.1.1
## [4] BiocManager_1.30.16 jquerylib_0.1.4 highr_0.9
## [7] tools_4.1.1 digest_0.6.27 viridisLite_0.4.0
## [10] lifecycle_1.0.1 jsonlite_1.7.2 evaluate_0.14
## [13] lattice_0.20-45 pkgconfig_2.0.3 rlang_0.4.11
## [16] Matrix_1.3-4 rstudioapi_0.13 yaml_2.2.1
## [19] parallel_4.1.1 expm_0.999-6 xfun_0.26
## [22] fastmap_1.1.0 xml2_1.3.2 httr_1.4.2
## [25] stringr_1.4.0 systemfonts_1.0.2 sass_0.4.0
## [28] webshot_0.5.2 stats4_4.1.1 grid_4.1.1
## [31] svglite_2.0.0 glue_1.4.2 R6_2.5.0
## [34] rmarkdown_2.9 bookdown_0.22 magrittr_2.0.1
## [37] scales_1.1.1 htmltools_0.5.2 rvest_1.0.0
## [40] colorspace_2.0-2 stringi_1.7.4 munsell_0.5.0
## [43] RcppParallel_5.1.4