Analysis of cottontop abundance at St Juan Nepomuceno
Author
Len Thomas
Published
May 5, 2025
1 Introduction
This document contains an analysis of cottontop tamarin survey results from St Juan Nepomuceno.
Code: load libraries
require(sf)require(tidyverse)require(readxl)require(raster) require(OpenStreetMap) #To download the imageryrequire(tmaptools) # To download satellite imageryrequire(tmap) #To plot maps#Store EPSG coordinate system code for utm18utm18 <-32618wgs84 <-4326source("CottontopHelperFunctions.r")
1.1 Data
Code: read 2021 raw results
#Read in patchespatch_names <-c("San Juan Nepomuceno 1", "Perico", "Laguna")dsn_Design <- ("../2021 Survey Design/GISdata")patches <-st_read(dsn_Design, "forest_parcels_2021", quiet =TRUE)lpatches <- patches %>% dplyr::filter(patch %in% patch_names)transect_strips <-st_read(dsn_Design, "transect_strips_2021", quiet =TRUE)#Use the non-overlapping buffer functions to get buffered polygons# rather than reading from the original shapefiles as these did not deal# with buffering#30m buffer includes original patch within itlpatches_30m <-create_nonoverlapping_buffers(lpatches, 30, TRUE)#300m buffer buffers 30m patch, and does not include original patchlpatches_300m <-create_nonoverlapping_buffers(lpatches_30m, 300, FALSE)#Find transects that touch the selected patchesind <- (lengths(st_intersects(transect_strips, lpatches_30m)) >0) | (lengths(st_intersects(transect_strips, lpatches_300m)) >0) ltransect_strips <- transect_strips[ind, ]lsegments <-read_rds("segments.rds")lsegments$n <- lsegments$titislsegments$n[is.na(lsegments$n)] <-0#Download a sat image basemap and plot behind the patches and segments#create a 500m buffer around the segments, so the basemap is a bit bigger than the segment extenttmp <-st_buffer(st_geometry(lpatches_300m), dist =1000)sat <-read_osm(tmp, zoom =14, type ="esri-imagery") #"bing")sat <-as(sat, "Raster")#sat2 <- projectRaster(sat, crs = CRS(paste0("epsg:", utm18)), method = "bilinear")#sat_df <- as.data.frame(sat, xy = T)
We present below a map of the local area, showing transects and titi detections. For illustration purposes, the figure shows each 50m section of transect line as 4 boxes (segments), each 100m side: 2 “inside” the transect lines, and 2 “outside” the transect lines. Segments in blue were surveyed; those in grey were not. Titi detections are shown in yellow for those inside the transects and in red for those outside. The green lines show the forest patches (the inner sets of lines) and a 300m buffer around these patches (the outer set of lines).
Note that nearby Perico and Laguna are just shown for context – data from these patches were not included in the analysis of St Juan Nepmuceno.
Code: plot maps
tm_shape(sat) +tm_rgb() +tm_shape(lpatches_300m) +tm_polygons(fill =NULL, fill_alpha =0.2, col ="green", col_alpha =1, lwd =2) +tm_shape(lpatches_30m) +tm_polygons(fill =NULL, col ="green", fill_alpha =0.5, lwd =2) +tm_shape(lsegments[lsegments$surveyed, ]) +tm_polygons(fill =NULL, col ="blue") +tm_shape(lsegments[!lsegments$surveyed, ]) +tm_polygons(fill =NULL, col ="gray40") +tm_shape(lsegments[(lsegments$n >0) & (lsegments$inside), ]) +tm_polygons(fill ="yellow", fill_alpha =0.4, col ="yellow") +tm_shape(lsegments[(lsegments$n >0) & (!lsegments$inside), ]) +tm_polygons(fill ="red", fill_alpha =0.4, col ="red") +tm_shape(ltransect_strips) +tm_text("name") +tm_shape(lpatches_30m) +tm_text("patch", col ="green")
Of the transects not surveyed:
A79184 was not part of the original design, but was added when the field team provided a revised polygon for this forest patch.
A79690 was part of the original design; I’m not sure why it was not surveyed.
A79188 was part of the original design. It is marked in the data sheet as “not surveyed” but no explanation given. It is also noted that it has contains habitat.
A79189 was part of the original design. It is marked in the data sheet as “not surveyed - too steep”. This reason may also apply to the previous transect, which is just above this one. It is noted that it contains titi habitat.
In addition there are some missing segments within transects. I reviewed some of these.
A79691: team 1 performed a visual survey only, the terrain was too difficult to do a full survey with the Bose (some segments are also marked as “Sin acceso”. For the first 250m (i.e., 5 survey segments), the habitat was “Rastrojo bajo” and in this case we have agreed that a visual survey is enough to show there are no titis there. The remaining segments were “Rastrojo alto” or “Bosque secundario” and we have agreed that a visual survey for these habitats is not enough to know there are no titis there, so we mark it as “not surveyed”.
A78686: team 1, second segment from the south. Both teams performed visual inspection for the first few segments of this line, and this second segment was marked as “Bosque” while the others were “Potrero”. We agreed that visual survey is not enough for the “Bosque” habitat, so that segment is marked as not surveyed.
A78684: team 2, 8th segment from the south. This part of this transect was surveyed by visual inspection; the surrounding segments are “Potrero” but this one is “Rastrojo alto” and so was marked as not surveyed.
One conclusion from this checking is that the data import code appears to be working as expected.
Here, we use titi detections both from inside and outside the transects; to make use of those from outside we assume in this initial analysis that they come from survey segments that are 100m wide (as is shown on the above figure - see Discussion, below).
Sightings of titis are recorded in the segment they were detected on. In some rare cases the detection is split between inside and outside strata – in which case it is split in proportion to the area of the segments surveyed in that regon.
The total surveyed area in the core is 4.434 km\(^2\). Within this area 57.5 titis were seen (note this is not a whole number because of the splitting mentioned above – the sighting on transect A78682 falls approximately half in the core and half in the buffer). This gives a density for the core of 12.97 titis per km\(^2\) and an abundance of 109.8.
For the buffer (300m around the core area), the total surveyed area in the buffer is 2.29 km\(^2\). Within this area 3.503 titis were seen. This gives a density for the buffer of 1.53 titis per km\(^2\) and an abundance of 6.836.
The overall estiamted total is 116.7 titis in the St Juan Nepomucenco forest patch during the 2021 survey.
3 Discussion
The estimate should be considered as provisional, because: - we need to complete QA/QC on the data importing procedure - we assumed “outside” segments are 100m wide, where this likely not correct. We have developed a method to estimate this, based on the ratio over the whole study of outside to inside counts. This will be implemented during analysis of the whole survey data, which is currently ongoing. - in previous analyses of survey data (e.g., Savage et al. 2016) we have analyzed group encounters and average group size separately, with the latter being calculated by pooling information across patches to decrease uncertainty - in previous analyses we have excluded data where only one side of the line was surveyed, which would change the results here as this was the case for A79691 - the estimate needs an expression of uncertainty – a confidence interval
Despite not being finalized, the estimate obtained from the 2021 survey of 116.7 is comparable with that from the 2012 survey (Savage et al. 2016), which was 143 with 95% confidence interval 85 – 239. The 2021 estimate is well within the confidence interval (i.e., range of plausible values) for abundance from the 2012 survey.
4 References
Savage, A., L. Thomas, K.L. Feilen, D. Kidney, L.H. Soto, M. Pearson, F.S. Medina, G. Emeris and R.R Guilen. 2016. Conservation efforts can positively impact the survival of cotton-top tamarins (Saguinus oedipus) in Colombia. PLOS One 11(12): e0168324.