## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", dev = 'png', dpi = 100, crop = NULL ) ## ----load package and data,warning=FALSE, message=FALSE----------------------- library(Polytect) library(ggplot2) library(flowPeaks) library(ddPCRclust) data(HR) head(HR) ggplot(data=HR, aes(channel1, channel2))+ geom_point(size=0.9,show.legend = FALSE) + labs(x = "color 1", y = "color 2") + theme(text = element_text(size = 15), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"), plot.margin = margin(t = 20, r = 20, b = 20, l = 20), axis.title.x = element_text(margin = margin(t = 20)), axis.title.y = element_text(margin = margin(r = 20))) ## ----flowpeaks,warning=FALSE, message=FALSE----------------------------------- data_scaled<-apply(HR,2,function(x) (x-min(x))/(max(x)-min(x))) data_input<-as.matrix(data_scaled) fp<-flowPeaks(data_input) ggplot(data=HR, aes(channel1, channel2,colour = factor(fp$peaks.cluster)))+ geom_point(size=0.9,show.legend = FALSE) + labs(x = "color 1", y = "color 2") + theme(text = element_text(size = 15), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"), plot.margin = margin(t = 20, r = 20, b = 20, l = 20), axis.title.x = element_text(margin = margin(t = 20)), axis.title.y = element_text(margin = margin(r = 20))) ## ----flowpeaks and merge,warning=FALSE, message=FALSE------------------------- result<-polytect_clust(data=HR,cluster_num=4) print(head(result)) ggplot(data=HR, aes(channel1, channel2,colour = factor(result$cluster)))+ geom_point(size=0.9,show.legend = FALSE) + labs(x = "color 1", y = "color 2") + theme(text = element_text(size = 15), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"), plot.margin = margin(t = 20, r = 20, b = 20, l = 20), axis.title.x = element_text(margin = margin(t = 20)), axis.title.y = element_text(margin = margin(r = 20))) ## ----merge the data,warning=FALSE, message=FALSE------------------------------ ## it is advised to standardize the data dist_matrix <- dist(data_input) hc <- hclust(dist_matrix, method = "ward.D2") # the number of clusters is specified at 6, which is larger than 4 hc_clusters <- cutree(hc, k = 6) ggplot(data=HR, aes(channel1, channel2,colour = factor(hc_clusters)))+ geom_point(size=0.9,show.legend = FALSE) + labs(x = "color 1", y = "color 2") + theme(text = element_text(size = 15), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"), plot.margin = margin(t = 20, r = 20, b = 20, l = 20), axis.title.x = element_text(margin = margin(t = 20)), axis.title.y = element_text(margin = margin(r = 20))) hc_parse<-list() hc_parse$cluster<-hc_clusters result<-polytect_merge(data=HR,cluster_num=4,base_clust=hc_parse) print(head(result)) ## ----plot the data,warning=FALSE, message=FALSE------------------------------- polytect_plot(result,cluster_num=4) ## ----summarise the results,warning=FALSE, message=FALSE----------------------- result_summary<-polytect_summary(result) print(result_summary) ## ----plot sil coefs,warning=FALSE, message=FALSE------------------------------ sil_plot(result) ## ----calculate the conc, warning=FALSE, message=FALSE------------------------- target_conc<-conc_cal(result,cluster_num=4,sampvol=0.91,volmix=20,voltemp=20) print(target_conc) ## ----3d example, warning=FALSE, message=FALSE--------------------------------- data(BPV) data_scaled<-apply(BPV,2,function(x) (x-min(x))/(max(x)-min(x))) data_input<-as.matrix(data_scaled) fp<-flowPeaks(data_input) table(fp$peaks.cluster) df_data<-as.data.frame(cbind(BPV,cluster=fp$peaks.cluster)) polytect_plot(df_data,cluster_num=8) ## ----3d example polytect clust, warning=FALSE, message=FALSE------------------ result<-polytect_clust(data=BPV,cluster_num=8) table(result$cluster) polytect_plot(result,cluster_num = 8) ## ----ddpcrclust, warning=FALSE, message=FALSE--------------------------------- exampleFiles <- list.files(paste0(find.package('ddPCRclust'), '/extdata'), full.names = TRUE) template <- readTemplate(exampleFiles[9]) template$template[1,3]<-2 template$template[1,c(6,7)]<-'' data_list<-list() data_list$ids<-'B01' data_list$data$B01<-data.frame(Ch1.Amplitude=HR[,1],Ch2.Amplitude=HR[,2]) result <- ddPCRclust(data_list,template = template) ggplot(data=HR, aes(channel1, channel2,colour = factor(result$B01$data$Cluster)))+ geom_point(size=0.9,show.legend = FALSE) + labs(x = "color 1", y = "color 2") + theme(text = element_text(size = 15), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"), plot.margin = margin(t = 20, r = 20, b = 20, l = 20), axis.title.x = element_text(margin = margin(t = 20)), axis.title.y = element_text(margin = margin(r = 20))) ## ----session_info, warning=FALSE, message=FALSE------------------------------- sessionInfo()