corr.series.seg {dplR}R Documentation

Compute Correlation between a Series and a Master Chronology


Compute correlation between a tree-ring series and a master chronology by segment.


corr.series.seg(rwl, series, series.yrs = as.numeric(names(series)),
                seg.length = 50, bin.floor = 100, n = NULL,
                prewhiten = TRUE, biweight = TRUE, 
                method = c("spearman", "pearson","kendall"),
                pcrit = 0.05,
                make.plot = TRUE, floor.plus1 = FALSE, ...)



a data.frame with series as columns and years as rows such as that produced by read.rwl.


a numeric or character vector. Usually a tree-ring series. If the length of the value is 1, the corresponding column of rwl is selected (by name or position) as the series and ignored when building the master chronology. Otherwise, the value must be numeric.


a numeric vector giving the years of series. Defaults to as.numeric(names(series)). Ignored if series is an index to a column of rwl.


an even integral value giving length of segments in years (e.g., 20, 50, 100 years).


a non-negative integral value giving the base for locating the first segment (e.g., 1600, 1700, 1800 AD). Typically 0, 10, 50, 100, etc.


NULL or an integral value giving the filter length for the hanning filter used for removal of low frequency variation.


logical flag. If TRUE each series is whitened using ar.


logical flag. If TRUE then a robust mean is calculated using tbrm.


Can be either "pearson", "kendall", or "spearman" which indicates the correlation coefficient to be used. Defaults to "spearman". See cor.test.


a number between 0 and 1 giving the critical value for the correlation test.


logical flag indicating whether to make a plot.


logical flag. If TRUE, one year is added to the base location of the first segment (e.g., 1601, 1701, 1801 AD).


other arguments passed to plot.


This function calculates the correlation between a tree-ring series and a master chronology built from a rwl object. Correlations are done by segment (see below) and with a moving correlation with length equal to the seg.length. The function is typically invoked to produce a plot.


A list containing matrices bins, moving.rho, and vectors spearman.rho, p.val, and overall.

Matrix bins contains the years encapsulated by each bin (segments). Matrix moving.rho contains the moving correlation and p-value for a moving average equal to seg.length. Vector spearman.rho contains the correlations by bin and p.val contains the p-values. Vector overall contains the average correlation and p-value.


Andy Bunn. Patched and improved by Mikko Korpela.

See Also

corr.series.seg, skel.plot, series.rwl.plot, ccf.series.rwl


dat <- co021
## Create a missing ring by deleting a year of growth in a random series
flagged <- dat$"641143"
flagged <- c(NA, flagged[-325])
names(flagged) <- rownames(dat)
dat$"641143" <- NULL
seg.100 <- corr.series.seg(rwl = dat, series = flagged,
                           seg.length = 100, biweight = FALSE)
## Not run: 
flagged2 <- co021$"641143"
names(flagged2) <- rownames(dat)
seg.100.1 <- corr.series.seg(rwl=dat, seg.length=100, biweight=FALSE,
                             series = flagged2)
## Select series by name or column position
seg.100.2 <- corr.series.seg(rwl=co021, seg.length=100, biweight=FALSE,
                             series = "641143")
seg.100.3 <- corr.series.seg(rwl=co021, seg.length=100, biweight=FALSE,
                             series = which(colnames(co021) == "641143"))
identical(seg.100.1, seg.100.2) # TRUE
identical(seg.100.2, seg.100.3) # TRUE

## End(Not run)

[Package dplR version 1.7.7 Index]