context("Testing simplified data tables (tee data)")
## first need to take the golf tee data
data(book.tee.data)
region <- book.tee.data$book.tee.region
samples <- book.tee.data$book.tee.samples
obs <- book.tee.data$book.tee.obs
obs <- obs[order(obs$object),]
egdata <- book.tee.data$book.tee.dataframe
# take only observer 1 data
egdata <- egdata[egdata$observer==1,]
# merge sample onto region
flatdat <- merge(region,samples,by="Region.Label")
# merge obs table onto that
flatdat <- merge(flatdat,obs,by=c("Sample.Label","Region.Label"),all.x=TRUE)
# finally merge the distances onto that
flatdat <- merge(flatdat,egdata,by="object",all.x=TRUE)
test_that("Recover structure for tee data", {
## check we can recover the 4 data frames
sepdat <- unflatten(flatdat)
# this should be a factor really, as is elsewhere
obs$Region.Label <- as.factor(obs$Region.Label)
## now egdata should actually have the Region.Label and Sample.Label columns
egdata <- merge(egdata, obs)
egdata <- egdata[,c(1,9,8,2:7)]
expect_equivalent(sepdat$region.table,region)
expect_equivalent(sepdat$obs.table,obs)
expect_equivalent(sepdat$sample.table,samples)
expect_equivalent(sepdat$data,egdata)
})
test_that("Errors work", {
flatdat[nrow(flatdat)+1,] <- flatdat[1,]
flatdat[nrow(flatdat),]$Effort <- 1322
expect_error(unflatten(flatdat))
# check we get an error if the columns are right but their case is wrong
flatdat$effort <- flatdat$Effort
flatdat$Effort <- NULL
expect_error(unflatten(flatdat))
})
test_that("Too many areas given", {
flatdat$Area[1] <- 123
expect_error(ds(flatdat), "Region areas are not consistent.")
})
#test_that("Extra regions",{
#
# # add an extra region
# region.e <- data.frame(Region.Label=1:3,Area=c(1040,640,500))
# samples
#
# # estimate using all tables
# dsmod.e <- ds(egdata,4,region.table=region.e, sample.table=samples,
# obs.table=obs)
#
#}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.