]> git.donarmstrong.com Git - rsem.git/blob - EBSeq/R/f0.R
Included EBSeq for downstream differential expression analysis
[rsem.git] / EBSeq / R / f0.R
1 f0 <-
2 function(Input, AlphaIn, BetaIn, EmpiricalR, NumOfGroups, log)
3 {       
4                  
5                 BetaVect=do.call(c,sapply(1:length(BetaIn),function(i)rep(BetaIn[i],NumOfGroups[i]),simplify=F))
6                 SampleNum=dim(Input)[2]
7                 #Product part
8                 ChooseParam1=round(Input+EmpiricalR-1)
9                 roundInput=round(Input)
10                 EachChoose=sapply(1:SampleNum, function(i)lchoose(ChooseParam1[,i], roundInput[,i]))
11                 
12                 SumEachIso=rowSums(Input)
13                 param1=AlphaIn + rowSums(EmpiricalR)
14                 param2=BetaVect + SumEachIso
15                 LogConst=rowSums(EachChoose)+lbeta(param1, param2)-lbeta(AlphaIn, BetaVect)
16
17
18                 if (log==F) FinalResult=exp(LogConst)
19                 if (log==T) FinalResult=LogConst
20     FinalResult
21 }
22