rcModelPLMd          package:preprocessCore          R Documentation

_F_i_t _r_o_b_u_s_t _r_o_w-_c_o_l_u_m_n _m_o_d_e_l_s _t_o _a _m_a_t_r_i_x

_D_e_s_c_r_i_p_t_i_o_n:

     These functions fit row-column effect models to matrices using
     PLM-d

_U_s_a_g_e:

     rcModelPLMd(y,group.labels)

_A_r_g_u_m_e_n_t_s:

       y: A numeric matrix

group.labels: A vector of group labels. Of length 'ncol(y)'

_D_e_t_a_i_l_s:

     This functions first tries to fit row-column models to the
     specified input matrix. Specifically the model 

                       y_ij = r_i + c_j + e_ij

     with r_i and c_j as row and column effects respectively. Note that
     these functions treat the row effect as the parameter to be
     constrained using sum to zero.

     Next the residuals for each row are compared to the group
     variable. In cases where there appears to be a significant
     relationship, the row-effect is "split" and separate row-effect
     parameters, one for each group, replace the single row effect.

_V_a_l_u_e:

     A list with following items: 

Estimates: The parameter estimates. Stored in column effect then row
          effect order

 Weights: The final weights used

Residuals: The residuals

StdErrors: Standard error estimates. Stored in column effect then row
          effect order

WasSplit: An indicator variable indicating whether or not a row was
          split with separate row effects for each group

_A_u_t_h_o_r(_s):

     B. M. Bolstad bmb@bmbolstad.com

_E_x_a_m_p_l_e_s:

     col.effects <- c(10,11,10.5,12,9.5)
     row.effects <- c(seq(-0.5,-0.1,by=0.1),seq(0.1,0.5,by=0.1))

     y <- outer(row.effects, col.effects,"+")
     y <- y + rnorm(50,sd=0.1)

     rcModelPLMd(y,group.labels=c(1,1,2,2,2))

     row.effects <- c(4,3,2,1,-1,-2,-3,-4)
     col.effects  <- c(8,9,10,11,12,10)

     y <- outer(row.effects, col.effects,"+") + rnorm(48,0,0.25)

     y[8,4:6] <- c(11,12,10)+ 2.5 + rnorm(3,0,0.25)
     y[5,4:6] <- c(11,12,10)+-2.5 + rnorm(3,0,0.25)

     rcModelPLMd(y,group.labels=c(1,1,1,2,2,2))

     par(mfrow=c(2,2))
     matplot(y,type="l",col=c(rep("red",3),rep("blue",3)),ylab="residuals",xlab="probe",main="Observed Data")
     matplot(rcModelPLM(y)$Residuals,col=c(rep("red",3),rep("blue",3)),ylab="residuals",xlab="probe",main="Residuals (PLM)")
     matplot(rcModelPLMd(y,group.labels=c(1,1,1,2,2,2))$Residuals,col=c(rep("red",3),rep("blue",3)),xlab="probe",ylab="residuals",main="Residuals (PLM-d)")

