install.packages("dplyr")
install.packages("sizeMat")
install.packages("FSA")
Madurez sexual en peces
La talla de madurez, definido como la talla a la cual el 50 % de los individuos son maduros, es una de las informaciones más importantes que se necesitan conocer de una población. Esta información se obtiene habitualmente a partir de las frecuencias de peces maduros a lo largo de un segmento específico de una distribución de edad o de talla. ¿Por qué es importante conocerla?
La talla de madurez es uno de los parámetros reproductivos básicos en la evaluación y manejo de recursos pesqueros explotados comercialmente, ya que determina la ojiva de madurez que permite separar la fracción madura de un stock de peces. ¡Una clasificación errónea significativa de peces maduros o en reposo como inmaduros, lleva a una subestimación de la Biomasa Desovante, lo que conduce a opciones de manejo inadecuadas!
En este post mostraremos los pasos para estimar la talla de madurez sexual, desde los requerimientos de información.
Instalación de librerías
Para poder replicar el ejercicio ejercicios que se mostrará a continuación es necesario instalar las siguientes librerías. Pueden realizar la instalación través del siguiente comando en consola de R:
Acerca de la información y la ecuación
Los datos necesarios para estimar la talla de madurez sexual para una muestra de peces, son las mediciones de la talla o longitud (L) y su correspondiente estadio de madurez gonadal (p. ej. virginal, en madurez, maduro, etc). La ecuación que se utiliza para estimar la talla de madurez es la ecuación logística:
\(P_L = \frac{1}{1+e^{-(\hat\beta_0+\hat\beta_1*L)}}\)
Donde \(P_L\) es la probabilidad de que un inididuo sea maduro a una determinada longitud \(L\). \(\hat\beta_0\) (intercepto) y \(\hat\beta_1\) (pendiente) sin los parámetros a estimar. La talla de madurez \(L_{50}\) se calcla como:
\(L_{50} = \frac{\hat\beta_0}{\hat\beta_1}\)
Manos a la obra
Para este ejercicio usaremos la base de datos matFish
precargada en la paquetería sizeMat
. Entonces cargamos la paquetería y llamamos a la base de datos:
library(sizeMat)
library(FSA)
data("matFish")
Esta base de datos contiene dos variables: total_length que se refiere a la longitud total en cm y stage_mat que se refieren a los estadios de madurez gonadal: I, II, III, IV, donde I es considerado inmaduro.
headtail(matFish)
total_length stage_mat
1 12 I
2 12 I
3 13 I
1731 59 IV
1732 62 IV
1733 63 IV
Para la estimación de la talla de madurez sexual utilizamores la función gonad_mature()
. Esta función requiere una base de datos (data.frame) con variables alométricas (p.ej: longitud total, longitud a la horquilla, ancho de caparazón, etc) y una variable que contenga los estadios de madurez sexual (estados de madurez gonadal).
El argumento varNames
requiere que se defina los nombres de las variables usadas en el análisis para la estimación de la madurez sexual (p.ej: varNames = c(“total_length”, “stage_mat”)). Así, el argumento varNames
solo debe contener nombres, el primero corespondiente a la variable alométrica y la segunda es el estadio de madurez sexual.
Los argumentos inmName
y matName
require los nombres que indiquen los estadios de madurez sexual contenidos en la base de datos. Estos argumentos pueden contener un solo nombre o podrían contener varios en forma de vector (e.g inmName = “I”, matName = c(“II”, “III”, “IV”)). La variable stage_mat de la base de datos matFish, contiene los estadios de madurez sexual. En este caso, el estadio I es considerado inmaduro y los estadios II, III, IV son maduros. Luego, internamente, estos estadios de madurez sexual son transformados en una variable binomial, donde inmaduro = 0 y maduro = 1.
= gonad_mature(data = matFish,
my_ogive varNames = c("total_length", "stage_mat"),
inmName = "I",
matName = c("II", "III", "IV" ))
Los resultados contienen una base de datos con la variable alométrica “X” y la clasificación de madurez (inmaduro = 0, maduro = 1). Además, los valores ajustados para la curva de regersión logística y los intervalos de confianza (95 %). Si utilizamos la función print()
sobre el modelo ajustado (my_ogive), la mediana de la talla de madurez (\(L_{50}\)) y los parámetros son mostrados.
print(my_ogive)
formula: Y = 1/1+exp-(A + B*X)
Original Bootstrap (Median)
A -8.6047 -8.6407
B 0.356 0.3576
L50 24.1694 24.1714
R2 0.5595 -
Finalmente podemos graficar los resultados que mostrarán la distribución de los parámetros estimados \(\hat\beta_0\) y \(\hat\beta_1\), distribución de \(L_{50}\) y la ojiva de madurez.
par(mfrow = c(2,2))
plot(my_ogive, xlab = "Longitud total (cm.)", ylab = "Proporción de maduros", col = c("blue", "red"))
Size at gonad maturity = 24.2
Confidence intervals = 23.8 - 24.6
Rsquare = 0.56