load( url( "http://webs.um.es/jfcalvo/eco1.RData" ) )
Demografía: tablas de vida y matrices de proyección
Práctica 3, Ecología I
Grado en Biología
Introducción
La demografía estudia la estructura y características de poblaciones estructuradas. En esta práctica trabajaremos analizando tablas de vida y matrices de proyección, dos herramientas fundamentales de la ecología de poblaciones. Contaremos para ello con diversos ejemplos de tablas y matrices, así como con varias funciones que nos permitirán realizar los cálculos en R. Analizaremos también los modelos de crecimiento poblacional de poblaciones estructuradas en clases de edades o estadios, evaluando la influencia diferentes parámetros que caracterizan su demografía (distribución estable de edades/estadios y valor reproductivo).
En concreto, los objetivos de la práctica son:
Interpretar el significado de las variables que componen una tabla de vida.
Estimar la tasa reproductiva neta, el tiempo generacional, la tasa intrínseca de incremento per cápita y la tasa anual de crecimiento de la población.
Interpretar valores de esperanza de vida, valores reproductivos y curvas de supervivencia.
Construir matrices de proyección, analizar sus características y realizar análisis demográficos de las mismas.
Interpretar los valores de una distribución estable y de la matriz fundamental.
Preparación
Una vez iniciado R cargaremos el archivo de datos y funciones desde el servidor:
Usando ls()
podemos ver los objetos cargados. Utiliza la función info
para obtener información sobre ellos; por ejemplo: info( "matriz" )
, info( "gorila" )
o info( "ballena" )
. Teclea info()
para más información.
Interpretación y análisis de tablas de vida
Trabajaremos en primer lugar con el objeto sciurus
, que es la tabla de vida de la ardilla gris Sciurus carolinensis.
sciurus
Esta tabla (elaborada en el seminario 1 de la asignatura a partir del objeto ardilla
) contiene información sobre el número de individuos \(n_x\) de la cohorte (sciurus$n
) que sobreviven al inicio de la clase de edad \(x\) (sciurus$x
), expresada en años, y las siguientes variables:
\(l_x\) : probabilidad de que un individuo sobreviva al inicio de la clase \(x\) (
sciurus$l
),\(s_x\) : tasa de supervivencia específica de cada clase (
sciurus$s
),\(d_x\) : tasa de mortalidad (
sciurus$d
), y\(m_x\) : tasa de maternidad de las diferentes clases de edad (
sciurus$m
).
Empezaremos calculando la tasa reproductiva neta (\(R_0\)), que es el promedio de descendientes por individuo a lo largo de su vida, el tiempo generacional (\(T\)), que es la edad promedio a la que un individuo tiene sus descendientes:
\[R_0 = \sum { l_x } m_x \qquad \qquad T = \dfrac{ \sum { x \cdot l_x } m_x }{ R_0 }\]
Los cálculos en R podemos realizarlos así:
sum( sciurus$l * sciurus$m ) -> R0
R0sum( sciurus$x * sciurus$l * sciurus$m ) / R0 -> T
T
También podemos calcular la tasa intrínseca de incremento de la población (\(r\)) y la tasa anual de crecimiento (\(\lambda = e^{r}\)). El valor aproximado de \(r\) se obtiene con:
log( R0 ) / T -> r
exp( r ) -> lambda
r; lambda
El valor exacto de \(r\) se obtiene con la ecuación de Euler-Lotka:
\[1 = \sum_{x}^{}e^{- rx} l_{x} \,m_{x}\] La solución a esta ecuación requiere un proceso de cálculo iterativo, incorporado en la función euler
(disponible en el archivo eco1.RData
), que aplicada sobre la tabla de vida proporciona, además tasa intrínseca de incremento de la población (\(r\)), la tasa anual de crecimiento (\(\lambda = e^{r}\)), el valor reproductivo ($vr
), el valor reproductivo residual ($vrr
) y la esperanza de vida ($ev
) de cada clase.
euler( sciurus, plots = TRUE )
El argumento plots = TRUE
proporciona las siguientes representaciones gráficas: pirámide de edades, curva de supervivencia, variación de la tasa de mortalidad con la edad y variación del valor reproductivo con la edad.
Elaboración y análisis de matrices de proyección
Las matrices de proyección constituyen una alternativa al uso de tablas de vida en estudios demográficos.
A partir de una tabla de vida de edades se puede construir la matriz de proyección de Leslie. Para el caso de censos posreproductivos:
\[\begin{pmatrix} s_{0}m_{1} & s_{1}m_{2} & s_{2}m_{3} & \ldots & s_{j - 1}m_{j} & 0 \\ s_{0} & 0 & 0 & \ldots & 0 & 0 \\ 0 & s_{1} & 0 & \ldots & 0 & 0 \\ 0 & 0 & s_{2} & \ldots & 0 & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & \ldots & s_{j - 1} & s_{j} = 0 \\ \end{pmatrix}\]
La función mproy
permite elaborar la matriz de Leslie. Por ejemplo, con la tabla de vida de la ardilla:
mproy( sciurus ) -> sl
Para realizar el análisis demográfico utilzaremos la función matriz
, disponible en el archivo eco1.RData
:
matriz( sl, plots = TRUE )
Además de los parámetros demográficos que ya conocemos, esta función proporciona también la distribución de edades estable (vector $w.DEE
) y la matriz fundamental ($mat.fund
), que expresa el tiempo promedio de vida esperado que un individuo en la clase \(j\) (columnas) pasará formando parte de la clase \(i\) (filas). La suma de los valores de cada columna de la matriz fundamental da como resultado el vector de esperanza de vida.
Tablas de vida y matrices de proyección de censo prerreproductivo
Las tablas de censo prerreproductivo se caracterizan por la ausencia de la primera clase de edad. Utilizando la función pre
con la tabla de vida de la ardilla gris, obtendremos:
pre( sciurus ) -> sciurus_pre
Ahora podemos elaborar la correspondiente matriz de proyección, usando la función mproy
con el argumento pre = TRUE
y proporcionando el valor de \(s_0\).
mproy( sciurus_pre, pre = TRUE, s0 = 0.2528302) -> spre
\[\begin{pmatrix} s_{0}m_{1} & s_{0}m_{2} & s_{0}m_{3} & \ldots & s_{0}m_{j - 1} & s_{0}m_{j} \\ s_{1} & 0 & 0 & \ldots & 0 & 0 \\ 0 & s_{2} & 0 & \ldots & 0 & 0 \\ 0 & 0 & s_{3} & \ldots & 0 & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & 0 & \ldots & s_{j - 1} & s_{j} \\ \end{pmatrix}\]
Al analizar esta matriz comprobaremos cómo los resultados son los mismos que los obtenidos en el análisis de la tabla de vida original, a excepción del valor reproductivo residual.
matriz( spre, plots = TRUE )
Los resultados también son también iguales si utilizamos la función euler
sobre la tabla de vida (con el argumento pre = TRUE
y proporcionando el valor de \(s_0\)):
euler( sciurus_pre, pre = TRUE, s0 = 0.2528302 )
El caso especial de la matriz de Dipsacus sylvestris
Analizaremos ahora la matriz del cardo Dipsacus sylvestris (cardo
). Al utilizar la función matriz
observaremos diversas incoherencias en los resultados. Esto es debido a que esta matriz presenta los elementos de reproducción (tasas de fertilidad) en la última columna. Al tratarse de una matriz elaborada a partir de un censo prerreproductivo, la clase de edad 0 (semillas de menos de un año) no aparece en el gráfico del ciclo de vida. Las semillas que germinan entre un censo y el siguiente, dan lugar a rosetas de diferentes tamaños (clases 3, 4 y 5), por lo que existen distintos tipos de “descendientes”. En la siguiente figura se representa el ciclo de vida de esta especie.
El argumento mult = TRUE
permite que la función matriz
tenga en cuenta esta característica de fertilidad múltiple:
cardomatriz( cardo, mult = TRUE )
Ejercicios complementarios
Evaluación
Realiza la prueba de evaluación disponible en la herramienta Exámenes del Aula Virtual.
Bibliografía
Begon M, Harper JL, Townsend CR (1988) Ecología. Omega, Barcelona.
Case TJ (2000) An Illustrated Guide to Theoretical Ecology. Oxford University Press, Oxford.
Caswell H (2001) Matrix Population Models. Sinauer, Sunderland MA.
Piñol J, Martínez-Vilalta J (2006) Ecología con números. Lynx, Barcelona.
Descripción de las funciones, tablas de vida y matrices de proyección
Utiliza la función info
. Por ejemplo: info( "matriz" )
, info( "gorila" )
o info( "ballena" )
.