collinear | R Documentation |
Test for linear or nonlinear collinearity/correlation in data
collinear(x, p = 0.85, nonlinear = FALSE, p.value = 0.001)
x |
A data.frame or matrix containing continuous data |
p |
The correlation cutoff (default is 0.85) |
nonlinear |
A boolean flag for calculating nonlinear correlations (FALSE/TRUE) |
p.value |
If nonlinear is TRUE, the p value to accept as the significance of the correlation |
Evaluation of the pairwise linear correlated variables to remove is accomplished through calculating the mean correlations of each variable and selecting the variable with higher mean. If nonlinear = TRUE, pairwise nonlinear correlations are evaluated by fitting y as a semi-parametrically estimated function of x using a generalized additive model and testing whether or not that functional estimate is constant, which would indicate no relationship between y and x thus, avoiding potentially arbitrary decisions regarding the order in a polynomial regression.
Messages and a vector of correlated variables
Jeffrey S. Evans <jeffrey_evans<at>tnc.org>
Jeffrey S. Evans <jeffrey_evans@tnc.org>
data(cor.data)
# Evaluate linear correlations on linear dataCollinearity between
head( dat <- cor.data[[4]] )
pairs(dat, pch=20)
( cor.vars <- collinear( dat ) )
# Remove identified variable(s)
head( dat[,-which(names(dat) %in% cor.vars)] )
# Evaluate linear correlations on nonlinear data
# using nonlinear correlation function
plot(cor.data[[1]], pch=20)
collinear(cor.data[[1]], p=0.80, nonlinear = TRUE )
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.