spotMerge             package:arrayMagic             R Documentation

_A_v_e_r_a_g_i_n_g _o_f _s_p_o_t _r_e_p_l_i_c_a_s

_D_e_s_c_r_i_p_t_i_o_n:

     The mean of replicated spots with identical number of replicas is
     calculated for each channel separately (note: 'spotMerge' does
     require an equal number of replicas). All other spots need to be
     eliminated with the help of the argument 'spotsToBeRemoved'. The
     mean is calculated for the expression levels 'exprs' of the
     'exprSetRGObject' and for the 'intensities' and 'weights' of the
     'arrayDataObject'. Any existing 'se.exprs'-'matrix' as part of
     'exprSetRGObject' is discarded. The standard deviation of the spot
     merge operation for the expression values is returned as
     'se.exprs'. The corresponding rows of 'spotAttr' in
     'arrayDataObject' are concatenated and form a single row of
     respectively more columns.

_U_s_a_g_e:

     spotMerge(exprSetRGObject, arrayDataObject, spotIdentifier="Name", spotsToBeRemoved=c("Blank"))

_A_r_g_u_m_e_n_t_s:

arrayDataObject: object of type 'arrayData'; required; default: missing

exprSetRGObject: object of type 'exprSetRG'; required; default: missing

spotIdentifier: character string; required; default: "Name" 

spotsToBeRemoved: vector of character strings, all spots which match
          the strings are removed from  the analysis before merging;
          required; default: 'c("Blank")'

_D_e_t_a_i_l_s:

_V_a_l_u_e:

     A list containing the "merged" 'exprSetRGObject' and
     'arrayDataObject'.

_A_u_t_h_o_r(_s):

     Andreas Buness <a.buness@dkfz.de>

_S_e_e _A_l_s_o:

     'processArrayData', 'slideMerge', 'exprSetRG-class',
     'arrayData-class'

_E_x_a_m_p_l_e_s:

         intensities <- array(data=runif(600),dim=c(100,2,3))
         dimnames(intensities) <- list(NULL, c("green","red"), NULL)
         spotAttr <- data.frame(Name=I(rep(c("x","y","k","l","z"),20)),
                                Zahl=rep(c(1,2,3,4,5),20),
                                Index=c(1:100))
         arrayDataObject <- new("arrayData", intensities=intensities, weights=intensities[,1,],
                                spotAttr=spotAttr, hybAttrList=NULL)
         indGreen=1:3
         indRed=4:6
         channels <- matrix( c(indGreen,indRed), nrow=length(indGreen), byrow=FALSE )
         colnames(channels) <- c("green","red")
         exprMatrix <- matrix(data=1,nrow=100,ncol=6,byrow=FALSE)
         pD <- data.frame(matrix(0,nrow=6,ncol=1))
         exprSetRGObject <- new("exprSetRG", exprs=exprMatrix, se.expr=exprMatrix,
                                   phenoData=new("phenoData",
                                     pData= pD,varLabels=list(rep("varLabel1",1))),
                                   channels=channels)
         resultList <- spotMerge(arrayDataObject=arrayDataObject,exprSetRGObject=exprSetRGObject, spotsToBeRemoved=c("x","z"))
         resultExprSetRG <- resultList[["exprSetRGObject"]]
         stopifnot( dim(exprs(resultExprSetRG))[1] == 3 )
         stopifnot( dim(exprs(resultExprSetRG))[2] == 6 )
         stopifnot(all(exprs(resultExprSetRG) == 1))
         stopifnot((all(se.exprs(resultExprSetRG) == 0)))
         resultArrayData <- resultList[["arrayDataObject"]]
         stopifnot( all(getIntensities(resultArrayData)[,1,] == getWeights(resultArrayData)) )
         nameColumns <- grep("Name", colnames(getSpotAttr(resultArrayData)))
         zahlColumns <- grep("Zahl", colnames(getSpotAttr(resultArrayData)))
         stopifnot( getSpotAttr(resultArrayData)[1,nameColumns] == rep ("y", 20 ) )
         stopifnot( getSpotAttr(resultArrayData)[1,zahlColumns] == rep (2, 20 ) )


         

             

