Simulare ocupanță

Obiectivele acestui exercițiu sunt următoarele:

1) să vă introducă în simularea datelor utilizate în modelarea ocupanței

2) să configureze datele de ocupanță pentru utilizare în pachetul R “unmarked”

3) să ruleze modele simple (single species singleseason) de ocupanță și să evalueze rezultatele

Pentru început, instalați pachetele R pe care le vom folosi pentru implementarea modelelor de ocupanță:

install.packages(unmarked)

Odată ce ați instalat pachetele, nu este nevoie să le mai instalați dacă reluați exercițiul

library(unmarked)

Folosim funcția seed pentru a avea toți același set de date

set.seed(24) # Setăm seed-ul pentru reproducibilitate
M <- 100 # Selectăm numărul de situri
J <- 2  # Numărul de vizite per sit
psi <- 0.8  # Definim probabilitatea reală de ocupare a unui sit (psi)
p <- 0.5  # Definim probabilitatea de detecție la fiecare vizită (p)

Simulăm ocupanța pentru fiecare sit utilizând o distribuție binomială

z <- rbinom(n = M, size = 1, prob = psi) # z este un vector care indică dacă fiecare sit este ocupat (1) sau nu (0)

Simulăm istoricul detecțiilor pentru fiecare sit și vizită

# y este o matrice de dimensiuni M x J care conține detecțiile (1) nondetecțiile (0)
y <- matrix(nrow = M, ncol = J)
for (i in 1:M) {
  for (j in 1:J) {
    y[i, j] <- rbinom(n = 1, size = 1, prob = z[i] * p)
  }
}

Creăm un obiect unmarkedFrameOccu folosind datele de detecție simulate

umf <- unmarkedFrameOccu(y = y) # Acest obiect este necesar pentru a folosi funcțiile din pachetul unmarked

Implementăm modelul null

fit <- occu(~1 ~1, data = umf)
# Modelul null presupune că probabilitatea de ocupare (psi) și probabilitatea de detecție (p) sunt constante

Afișați rezumatul modelului null

summary(fit)

Codul R este disponibil pentru descărcare: