sss {dplR} | R Documentation |
Subsample Signal Strength
Description
Calculate subsample signal strength on a
data.frame
of (usually) ring-width indices.
Usage
sss(rwi, ids = NULL)
Arguments
rwi |
a |
ids |
an optional |
Details
This calculates subsample signal strength (sss) following equation 3.50 in Cook and Kairiukstis (1990) but using notation from Buras (2017) because writing the prime unicode symbol seems too difficult. The function calls rwi.stats
and passes it the arguments ids
and prewhiten
.
To make better use of variation in growth within and between series, an appropriate mask (parameter ids
) should be provided that identifies each series with a tree as it is common for dendrochronologists to take more than one core per tree. The function read.ids
is helpful for creating a mask based on the series ID.
Subsample signal strength is calculated as \frac{n[1+(N-1)\bar{r}]}{N[1+(n-1)\bar{r}]}
where n
and N
are the number of cores or trees in the subsample and sample respectively and rbar
is mean interseries correlation. If there is only one core per tree n
is the sample depth in a given year (rowSums(!is.na(rwi))
), N
is the number of cores (n.cores
as given by rwi.stats
), and rbar
is the mean interseries correlation between all series (r.bt
as given by rwi.stats
). If there are multiple cores per tree n
is the number of trees present in a given year, N
is the number of trees (n.trees
as given by rwi.stats
), and rbar
is the effective mean interseries correlation (r.eff
as given by rwi.stats
).
Readers interested in the differences between subsample signal strength and the more commonly used (running) expressed population signal should look at Buras (2017) on the common misuse of the expressed population signal as well as Cook and Pederson (2011) for a more general approach to categorizing variability in tree-ring data.
Value
A numeric
containing the subsample signal strength that is the same as number if rows ofrwi
.
Author(s)
Andy Bunn. Patched and improved by Mikko Korpela.
References
Buras, A. (2017) A comment on the Expressed Population Signal. Dendrochronologia 44:130-132.
Cook, E. R. and Kairiukstis, L. A., editors (1990) Methods of Dendrochronology: Applications in the Environmental Sciences. Springer. ISBN-13: 978-0-7923-0586-6.
Cook, E. R. and Pederson, N. (2011) Uncertainty, Emergence, and Statistics in Dendrochronology. In Hughes, M. K., Swetnam, T. W., and Diaz, H. F., editors, Dendroclimatology: Progress and Prospects, pages 77–112. Springer. ISBN-13: 978-1-4020-4010-8.
See Also
Examples
data(ca533)
ca533.rwi <- detrend(ca533,method="Spline")
# assuming 1 core / tree
ca533.sss <- sss(ca533.rwi)
ca533.ids <- autoread.ids(ca533)
# done properly with >=1 core / tree as per the ids
ca533.sss2 <- sss(ca533.rwi,ca533.ids)
yr <- time(ca533)
plot(yr,ca533.sss,type="l",ylim=c(0.4,1),
col="darkblue",lwd=2,xlab="Year",ylab="SSS")
lines(yr,ca533.sss2,lty="dashed",
col="darkgreen",lwd=2)
# Plot the chronology showing a potential cutoff year based on SSS
# (using sss2 with the correct series IDs to get >=1 core / tree as per the ids)
ca533.crn <- chron(ca533.rwi)
def.par <- par(no.readonly=TRUE)
par(mar = c(2, 2, 2, 2), mgp = c(1.1, 0.1, 0), tcl = 0.25, xaxs='i')
plot(yr, ca533.crn[, 1], type = "n", xlab = "Year",
ylab = "RWI", axes=FALSE)
cutoff <- max(yr[ca533.sss2 < 0.85])
xx <- c(500, 500, cutoff, cutoff)
yy <- c(-1, 3, 3, -1)
polygon(xx, yy, col = "grey80")
abline(h = 1, lwd = 1.5)
lines(yr, ca533.crn[, 1], col = "grey50")
lines(yr, caps(ca533.crn[, 1], nyrs = 32), col = "red", lwd = 2)
axis(1); axis(2); axis(3);
par(new = TRUE)
## Add SSS
plot(yr, ca533.sss2, type = "l", xlab = "", ylab = "",
axes = FALSE, col = "blue")
abline(h=0.85,col="blue",lty="dashed")
axis(4, at = pretty(ca533.sss2))
mtext("SSS", side = 4, line = 1.1, lwd=1.5)
box()
par(def.par)