unmarkedFrameMMO.Rd
Organizes count data and experimental design information
from multiple primary periods along with associated covariates. This S4 class
is required by the data argument of multmixOpen
unmarkedFrameMMO(y, siteCovs=NULL, obsCovs=NULL, yearlySiteCovs=NULL,
numPrimary, type, primaryPeriod)
An MxJT matrix of the repeated count data, where M is the number of sites (i.e., points or transects), J is the number of distance classes and T is the maximum number of primary sampling periods per site
A data.frame
of covariates that vary at the
site level. This should have M rows and one column per covariate
Either a named list of data.frame
s of covariates
that vary within sites, or a data.frame
with MxJT rows in
site-major order.
Either a named list of MxT data.frame
s,
or a site-major data.frame
with MT rows and 1 column per
covariate
Maximum number of observed primary periods for each site
Either "removal" for removal sampling, "double" for standard double observer sampling, or "depDouble" for dependent double observer sampling
An MxJT matrix of integers indicating the primary period of each observation
unmarkedFrameMMO
is the S4 class that holds data to be passed
to the multmixOpen
model-fitting function.
Options for the detection process (type
) include equal-interval removal
sampling ("removal"
), double observer sampling ("double"
), or
dependent double-observer sampling ("depDouble"
). Note
that unlike the related functions multinomPois
and
gmultmix
, custom functions for the detection process (i.e.,
piFun
s) are not supported. To request additional options contact the author.
When gamma or omega are modeled using year-specific covariates, the covariate data for the final year will be ignored; however, they must be supplied.
If the time gap between primary periods is not constant, an M by T
matrix of integers should be supplied using the primaryPeriod
argument.
an object of class unmarkedFrameMMO
#Generate some data
set.seed(123)
lambda=4; gamma=0.5; omega=0.8; p=0.5
M <- 100; T <- 5
y <- array(NA, c(M, 3, T))
N <- matrix(NA, M, T)
S <- G <- matrix(NA, M, T-1)
for(i in 1:M) {
N[i,1] <- rpois(1, lambda)
y[i,1,1] <- rbinom(1, N[i,1], p) # Observe some
Nleft1 <- N[i,1] - y[i,1,1] # Remove them
y[i,2,1] <- rbinom(1, Nleft1, p) # ...
Nleft2 <- Nleft1 - y[i,2,1]
y[i,3,1] <- rbinom(1, Nleft2, p)
for(t in 1:(T-1)) {
S[i,t] <- rbinom(1, N[i,t], omega)
G[i,t] <- rpois(1, gamma)
N[i,t+1] <- S[i,t] + G[i,t]
y[i,1,t+1] <- rbinom(1, N[i,t+1], p) # Observe some
Nleft1 <- N[i,t+1] - y[i,1,t+1] # Remove them
y[i,2,t+1] <- rbinom(1, Nleft1, p) # ...
Nleft2 <- Nleft1 - y[i,2,t+1]
y[i,3,t+1] <- rbinom(1, Nleft2, p)
}
}
y=matrix(y, M)
#Create some random covariate data
sc <- data.frame(x1=rnorm(100))
#Create unmarked frame
umf <- unmarkedFrameMMO(y=y, numPrimary=5, siteCovs=sc, type="removal")
summary(umf)
#> unmarkedFrame Object
#>
#> 100 sites
#> Maximum number of observations per site: 15
#> Mean number of observations per site: 15
#> Number of primary survey periods: 5
#> Number of secondary survey periods: 3
#> Sites with at least one detection: 100
#>
#> Tabulation of y observations:
#> 0 1 2 3 4 5 6
#> 621 460 255 104 44 11 5
#>
#> Site-level covariates:
#> x1
#> Min. :-2.08984
#> 1st Qu.:-0.84632
#> Median :-0.10159
#> Mean :-0.02812
#> 3rd Qu.: 0.72915
#> Max. : 2.69840