findLinearCombos
From caret v6.070
by Max Kuhn
Determine linear combinations in a matrix
Enumerate and resolve the linear combinations in a numeric matrix
 Keywords
 manip
Usage
findLinearCombos(x)
Arguments
 x
 a numeric matrix
Details
The QR decomposition is used to determine if the matrix is full rank and then identify the sets of columns that are involved in the dependencies.
To "resolve" them, columns are iteratively removed and the matrix rank is rechecked.
The trim.matrix
function in the subselect package can also be used
to accomplish the same goal.
Value

a list with elements:
 linearCombos
 If there are linear combinations, this will be a list with elements for each dependency that contains vectors of column numbers.
 remove
 a list of column numbers that can be removed to counter the linear combinations
See Also
Examples
testData1 < matrix(0, nrow=20, ncol=8)
testData1[,1] < 1
testData1[,2] < round(rnorm(20), 1)
testData1[,3] < round(rnorm(20), 1)
testData1[,4] < round(rnorm(20), 1)
testData1[,5] < 0.5 * testData1[,2]  0.25 * testData1[,3]  0.25 * testData1[,4]
testData1[1:4,6] < 1
testData1[5:10,7] < 1
testData1[11:20,8] < 1
findLinearCombos(testData1)
testData2 < matrix(0, nrow=6, ncol=6)
testData2[,1] < c(1, 1, 1, 1, 1, 1)
testData2[,2] < c(1, 1, 1, 0, 0, 0)
testData2[,3] < c(0, 0, 0, 1, 1, 1)
testData2[,4] < c(1, 0, 0, 1, 0, 0)
testData2[,5] < c(0, 1, 0, 0, 1, 0)
testData2[,6] < c(0, 0, 1, 0, 0, 1)
findLinearCombos(testData2)
Community examples
Looks like there are no examples yet.