- Is there a way to test if my data is monotonic prior to Spearman's rho / Kendall's tau correlation calculations?
You could plot the data and look for a non-monotone shape.
Also, you could fit a generalized additive model (GAM) which estimates nonparametric functions of the predictor variables. This can be done in the
mgcv package in R.
n <- 100
x <- runif(n,-5,5)
y <- x^2 + rnorm(n,0,4)
> cor.test(x, y, method = "kendall")
> cor.test(x, y, method = "spearman")
So, both Spearman's rho and Kendall's tau are not helpful.
Now, if we run a GAM, we get
> summary(m0 <- gam(y~s(x)))
Approximate significance of smooth terms:
edf Ref.df F p-value
s(x) 8.277 8.861 46.72 <2e-16 ***
With edf>1 there is evidence of non-linearity in the data, which doesn't prove that the association is non-monotonic, but nevertheless suggests that it might be.
Is it possible to decompose my dataset into monotonic sections, to analyse them separately?
Yes ! Sticking with the same dataset, we can do:
x1 <- x[x<0]
y1 <- y[x<0]
x2 <- x[x>=0]
y2 <- y[x>=0]
cor.test(x1, y1, method = "kendall")
cor.test(x1, y1, method = "spearman")
and this handles the first segment of the data, then:
cor.test(x2, y2, method = "kendall")
cor.test(x2, y2, method = "spearman")
So here we can see a strong negative association in the first segment and a strong positive association in the second.
- Is there any equivalent to Spearman's rho test (or Kendall's tau) that accounts for multiple monotonic components?
Not that I am aware of.