lgatto / pRoloc

A unifying bioinformatics framework for organelle proteomics
http://lgatto.github.io/pRoloc/
15 stars 13 forks source link

tagmPredict compatibility with Novelty TAGM results #138

Open ococrook opened 4 years ago

ococrook commented 4 years ago

tagmPredict gives and error when using NoveltyTAGM results instead of usually MCMC results:

tanTAGMnov <- tagmMcmcTrain_Nov(object = tan2009r1,
                                fcol = "markers",
                                numIter = 100, # typically needs to be 15,000+
                                thin = 2, #typically about 10
                                burnin = 20, # typically about 10,000
                                numChains = 1, # chais in parraellel recommend 4+
                                beta0 = 1, # recommend 1 or 1/number of proteins
                                K_bar = 10) # number of new classes allowed

tanTagmNoveltyRes <- tagmNoveltyProcess(object = tan2009r1, params = tanTAGMnov)

tanTagmNoveltyparams <- tagmMcmcProcess(tanTAGMnov)

tan2009r1 <- tagmPredict(object = tan2009r1, params = tanTagmNoveltyparams, probJoint = TRUE)

Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent

The offending lines in tagmMcmcpreidct are

 K <- chains(params)[[1]]@K
 .joint <- rbind(params@summary@tagm.joint, .probmat)

These need to replaced with

  K <- length(markers)
.joint <- rbind(params@summary@tagm.joint[, markers], .probmat)