The R BCHM
package provides a computation tool
for the designs and analyses based on Bayesian Cluster Hierarchical
Model (BCHM).In this study, a Bayesian non-parametric method is applied
to dynamically calculate the number of clusters and conduct the multiple
cluster classification based on subgroup outcomes. Borrowing strength is
determined by the similarity computed from the Bayesian non-parametric
clustering method:
Here is an example of the usage of the BCHM package:
library(BCHM)
#> Loading required package: rjags
#> Loading required package: coda
#> Linked to JAGS 4.3.2
#> Loaded modules: basemod,bugs
# Trial example
nDat = c(15, 3, 12, 28, 29, 29, 26, 5, 2, 20) # total number of patients
xDat = c(2, 0, 1, 6, 7, 3, 5, 1, 0, 3) # number of responses
alpha <- 1e-20
d0 <- 0.05
alpha1 = 50
beta1 = 10
tau2 <- 0.1
phi1 <- 0.1
deltaT <- 0.2
thetaT <- 0.60
res <- BCHM(nDat = nDat,
xDat = xDat,
alpha = alpha,
d0 = d0,
alpha1 = alpha1,
beta1 = beta1,
tau2 = tau2,
phi1 = phi1,
deltaT = deltaT,
thetaT = thetaT,
burnIn = 100,
MCIter = 2000,
MCNum = 4000,
seed = 1000
)
print(res$SMatrix)
#> 1 2 3 4 5 6 7 8 9 10
#> 1 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
#> 2 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
#> 3 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
#> 4 0.05 0.05 0.05 1.00 1.00 0.05 1.00 1.00 0.05 0.05
#> 5 0.05 0.05 0.05 1.00 1.00 0.05 1.00 1.00 0.05 0.05
#> 6 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
#> 7 0.05 0.05 0.05 1.00 1.00 0.05 1.00 1.00 0.05 0.05
#> 8 0.05 0.05 0.05 1.00 1.00 0.05 1.00 1.00 0.05 0.05
#> 9 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
#> 10 1.00 1.00 1.00 0.05 0.05 1.00 0.05 0.05 1.00 1.00
print(res$Result)
#> Resp. No.Pat Obs. Rate Cluster Post. Mean Prob(P>Phi1+deltaT) Decision
#> Subg. 1 2 15 0.133 1 0.122 0.004 0
#> Subg. 2 0 3 0.000 1 0.115 0.007 0
#> Subg. 3 1 12 0.083 1 0.119 0.003 0
#> Subg. 4 6 28 0.214 2 0.200 0.056 0
#> Subg. 5 7 29 0.241 2 0.213 0.089 0
#> Subg. 6 3 29 0.103 1 0.115 0.001 0
#> Subg. 7 5 26 0.192 2 0.190 0.040 0
#> Subg. 8 1 5 0.200 2 0.192 0.094 0
#> Subg. 9 0 2 0.000 1 0.118 0.011 0
#> Subg. 10 3 20 0.150 1 0.129 0.004 0
col <- res$Result[,4]
BCHMplot_cluster(res, col, pch=16)