fixDependence              package:mgcv              R Documentation

_D_e_t_e_c_t _l_i_n_e_a_r _d_e_p_e_n_d_e_n_c_i_e_s _o_f _o_n_e _m_a_t_r_i_x _o_n _a_n_o_t_h_e_r

_D_e_s_c_r_i_p_t_i_o_n:

     Identifies columns of a matrix 'X2' which are linearly dependent
     on columns of a matrix 'X1'. Primarily of use in setting up 
     identifiability constraints for nested GAMs.

_U_s_a_g_e:

     fixDependence(X1,X2,tol=.Machine$double.eps^.5)

_A_r_g_u_m_e_n_t_s:

      X1: A matrix.

      X2: A matrix, the columns of which may be partially linearly
          dependent on the columns of 'X1'.

     tol: The tolernce to use when assessing linear dependence.

_D_e_t_a_i_l_s:

     The algorithm uses a simple approach based on QR decomposition:
     see code for details.

_V_a_l_u_e:

     An array of the columns of 'X2' which are linearly dependent on
     columns of 'X1'. 'NULL' if the two matrices are independent.

_A_u_t_h_o_r(_s):

     Simon N. Wood simon.wood@r-project.org

_E_x_a_m_p_l_e_s:

     n<-20;c1<-4;c2<-7
     X1<-matrix(runif(n*c1),n,c1)
     X2<-matrix(runif(n*c2),n,c2)
     X2[,3]<-X1[,2]+X2[,4]*.1
     X2[,5]<-X1[,1]*.2+X1[,2]*.04
     fixDependence(X1,X2)

