Nothing
CensusToCaptHist <-
function(ID, d, dformat = "%Y", timeInt = "Y") {
# Check data
if(!inherits(ID, "character")) {
ID <- as.character(ID)
}
if (is.numeric(d)) {
if (length(which(round(d) != d)) > 0) {
stop("Please provide integer values or Date class ",
"values for argument 'd'.", call. = FALSE)
} else {
int <- d
}
} else if (is.character(d) | inherits(d, "Date")) {
if (is.character(d)) {
d <- as.Date(d, format = dformat)
if (length(which(is.na(d)))) {
stop("Wrong 'dformat' argument or wrong 'd' values.",
call. = FALSE)
}
}
if (timeInt == "Y"){
int <- as.numeric(format(d, format = "%Y"))
} else if (timeInt == "M") {
int <- as.numeric(format(d, format = "%m")) +
12 * (as.numeric(format(d, format = "%Y")) -
min(as.numeric(format(d, format = "%Y"))))
} else if (timeInt == "D" | timeInt == "W") {
jul <- julian(d, origin = min(d)) + 1
if (timeInt == "W"){
int <- ceiling(jul / 7)
} else {
int <- jul
}
}
} else {
stop("Wrong class for argument 'd'. Values\n",
"need to be of class 'integer', 'character' or 'Date'.",
call. = FALSE)
}
# Construct capture-recapture matrix:
dint <- min(int):max(int)
ndint <- length(dint)
uniID <- sort(unique(ID))
n <- length(uniID)
mat <- matrix(0, n, ndint, dimnames = list(NULL, dint))
for (i in 1:ndint) {
idt <- which(d == dint[i])
idd <- which(uniID %in% ID[idt])
mat[idd, i] <- 1
}
# Create data.frame with ID and Y:
dmat <- data.frame(ID = uniID, mat)
return(dmat)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.