csbl-usp / cemitool Goto Github PK
View Code? Open in Web Editor NEWCo-Expression Module Identification Tool (CEMiTool) official repository
Co-Expression Module Identification Tool (CEMiTool) official repository
Hi everyone,
I get a warning when I try to run my dataframe:
In pracma::gammainc(bh/x, ah) : Arguments 'x' and/or 'a' are too large.
What does it mean exactly? Is there any limitation in numbers of genes or condition used?
Thanks
In the cemitool report, GSEA figure has overlapping module NES. Maybe make the figure proportional to the number of modules or rescale the NES size.
Place the information of statistical test used in the ORA and Gene Set Enrichment Analysis.
For example: ORA - Hypergeometric Test with Benjamini & Hochberg background correction.
PPI does not run when there is only 1 gene in the Not Correlated genes module.
In fortify.network(intergraph::asNetwork(model), ...) :
duplicated edges detected
Problem in the function:
plot_interactions(cem)
I'm opening this issue just because I wasn't sure if this is exactly what we wanted to do. It seems that when we apply the vst function, we're changing the expression data in the cem object (expr_data(cem)), but that's not the case when we don't apply the transformation. The user might want to keep the original data in the expression slot; the transformed data should go into the selected_genes slot, from my understanding.
Line 57 in 6ec9374
Hello CEMiTool team,
I appreciate your help with my previous questions and everything works perfectly! However, I was wondering if there was a "module preservation" equivalent function in CEMiTool.
I currently have a data set with 3 different "conditions"(condition-1, condition-2, condition-3). They each have a different number of replicates within them(condition-1=15 reps, condition-2=17 reps, condition-3= 18 reps). I am able to define the modules in the full data set (reference modules) but I was wondering if it was possible to perform a module preservation between my "reference" to the
respective conditions to see how well the modules are preserved between each condition. Essentially I would like to see the statistics and 3 different networks showing the different connectivity between the conditions based on the reference modules.
An example of this is from
https://www.frontiersin.org/articles/10.3389/fnsys.2017.00075/full
Thank you
I was getting a weird error when running cemitool with an annotation file. The problem was that the columns of the data frame were formatted as integer or factor. The analysis only worked once they were formatted as character.
It could be that it only applies for the SampleName column as that is also the colnames of the count matrix
Some results parameters are not shown in the report:
Getting this error while running this CEMiTool.R script
When using RNA-Seq data, in which form should the data be?
I ran the pipeline once using the normalized counts generated by DESeq2 and another time with the log transformed version.
I got completely different results. What is happening here? And why is it happening?
Hello!
I understand cemitool can use an external PPI network to visualize gene interactions but I was wondering if I am able to visualize the network by itself, without using an external gene interaction file? In WGCNA you can calculate the topological overlap matrix and visualize the gene intramodular connectivity by exporting to cytoscape. So I was curious if cemitool has this feature too.
Thank you
Hi
I had an issue with a dataset where all genes could be assigned to a correlated network i.e there were no genes that were labelled as Not.Correlated.
Please could we get a quick fix to handle these situtations.
CEMiTool rocks!
Cheers
Steve
My quik fix was as follows:-
module_to_gmt <- function(cem, directory="./Tables"){
if(nrow(cem@module) == 0){
stop("No modules in CEMiTool object! Did you run find_modules()?")
}else{
gene_modules <- cem@module
n_genes <- as.numeric(table(gene_modules[, "modules"]))
n_genes <- n_genes[1:(length(n_genes)-1)]
module_names <- as.character(unique(gene_modules[, "modules"]))
## FIX 1. check if Not.Correlated genes exist
if( any(module_names %in% "Not.Correlated") == FALSE ){
cat("All Genes are in a network - there is no [Not.Correlated] set of genes.")
module_names <- module_names
} else {
module_names <- module_names[-which(module_names == "Not.Correlated")]
}
#module_names <- module_names[-which(module_names =="Not.Correlated")]
module_names <- module_names[order(nchar(module_names), module_names)]
## FIX 2. corrected n_rows from n_genes to module_names
gmt_df <- as.data.frame(matrix("", ncol = max(n_genes), nrow = length(module_names)), stringsAsFactors = FALSE)
rownames(gmt_df) <- module_names
for (i in 1:length(module_names)){
mod <- module_names[i]
selected <- gene_modules[gene_modules$modules == mod, "genes"]
gmt_df[mod, 1:(length(selected))] <- selected
}
gmt_df <- as.data.frame(cbind(module_names, gmt_df))
write.table(gmt_df, file.path(directory, "modules_genes.gmt"), sep="\t", col.names = FALSE)
}
}
The Dendogram, and the beta graphs are not saved as files. Please include as an option in the package.
Hi
I have NAs in my gene expression matrix and it seems to be breaking cemitool with the following error:
> cem <- cemitool(expressionIsolateGeneMat)
Error in matrixStats::rowVars(expr) : Argument 'x' cannot be logical.
It "works" when I replace all the NAs with 0s, but that's not really what I want to include there.
> expressionIsolateGeneMat2 = expressionIsolateGeneMat;
> expressionIsolateGeneMat2[is.na(expressionIsolateGeneMat)]=0;
> cem <- cemitool(expressionIsolateGeneMat2)
... works ...
Any advice on what I should be including in the NAs? Ideally, any entries that are NA would just be ignored in the analysis.
Thanks!
Hi,
I'm new to using R for data analysis and just managed to perform DESeq2 on my RNA-sequencing data. I would like to use cemitool, but I keep on getting the same error:
Error in dev.off() : cannot shut down device 1 (the null device)
Previously everything worked fine, and performing cemitool on the data that is included in the package works (expr0) fine as well.
The code that I've used is the following:
`> library(CEMiTool)
Expr <- read.csv("normalized counts_all wt vs ko.csv", header=T, row.names=1, sep=",")
head(Expr)
GC058565 GC058566 GC058567 GC058568 GC058569 GC058570 GC058559
0610009B22Rik 426.868903 463.465790 438.783079 480.97240 484.206797 479.74765 502.46918
0610010F05Rik 1372.004429 1391.445935 1404.105854 1330.78866 1425.819276 1447.92055 1476.42677
0610010K14Rik 4.154442 7.339956 8.775662 18.68809 9.827075 22.31384 14.52223
0610012G03Rik 21.810820 35.651215 53.629043 69.83444 51.815487 71.90016 64.86596
0610030E20Rik 550.463548 533.719654 555.791901 521.29933 493.140502 534.29260 517.95956
0610040J01Rik 103.861047 89.128037 109.208233 106.22703 109.884568 79.33811 110.36895
GC058560 GC058561 GC058563 GC058564
0610009B22Rik 457.350993 475.009836 471.70454 529.78143
0610010F05Rik 1466.595819 1266.062074 1292.32910 1499.11171
0610010K14Rik 9.454284 6.623643 15.90015 12.50749
0610012G03Rik 38.998922 70.967605 53.00051 31.26872
0610030E20Rik 472.714204 551.654850 514.10495 538.71535
0610040J01Rik 94.542841 118.279342 95.40092 107.20703
ann <- read.csv("Coldata_Cemitool.csv", header=T, sep = ";")
head(ann)
SampleName Class
1 GC058565 wt
2 GC058566 wt
3 GC058567 wt
4 GC058568 wt
5 GC058569 wt
6 GC058570 wt
cem3 <- cemitool(Expr, apply_vst = T)
Error in dev.off() : cannot shut down device 1 (the null device)`
Expr: contains 11 samples with 15679 variables. This data is normalized data that I've obtained using DESeq2
ann: is my annotation file, containing SampleName column stating the different samples + Class with the genotype of my animals.
I have already tried to update RStudio, restart it for a couple of times and tried to work in R instead of RStudio. But I keep on having the same issue. Underneath you can find the sessionInfo().
Could you please help me with this issue, as I have no clue what to do or what I'm doing wrong.
Many thanks in advance,
Carmen
`> sessionInfo()
R version 3.5.3 (2019-03-11)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17134)
Matrix products: default
locale:
[1] LC_COLLATE=Dutch_Belgium.1252 LC_CTYPE=Dutch_Belgium.1252 LC_MONETARY=Dutch_Belgium.1252
[4] LC_NUMERIC=C LC_TIME=Dutch_Belgium.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] CEMiTool_1.6.11
loaded via a namespace (and not attached):
[1] backports_1.1.4 Hmisc_4.2-0 fastmatch_1.1-0
[4] plyr_1.8.4 igraph_1.2.4.1 lazyeval_0.2.2
[7] splines_3.5.3 BiocParallel_1.16.6 GenomeInfoDb_1.18.2
[10] ggplot2_3.2.0 urltools_1.7.3 robust_0.4-18.1
[13] digest_0.6.20 foreach_1.4.7 htmltools_0.3.6
[16] GOSemSim_2.8.0 viridis_0.5.1 GO.db_3.7.0
[19] ggpmisc_0.3.1 gdata_2.18.0 magrittr_1.5
[22] checkmate_1.9.4 memoise_1.1.0 fit.models_0.5-14
[25] cluster_2.0.7-1 doParallel_1.0.15 limma_3.38.3
[28] sna_2.4 fastcluster_1.1.25 annotate_1.60.1
[31] matrixStats_0.54.0 GeneOverlap_1.18.0 enrichplot_1.2.0
[34] prettyunits_1.0.2 colorspace_1.4-1 blob_1.2.0
[37] rrcov_1.4-7 ggrepel_0.8.1 xfun_0.8
[40] dplyr_0.8.3 crayon_1.3.4 RCurl_1.95-4.12
[43] jsonlite_1.6 graph_1.60.0 ffbase_0.12.7
[46] genefilter_1.64.0 zeallot_0.1.0 impute_1.56.0
[49] survival_2.43-3 iterators_1.0.12 glue_1.3.1
[52] polyclip_1.10-0 gtable_0.3.0 zlibbioc_1.28.0
[55] XVector_0.22.0 UpSetR_1.4.0 DelayedArray_0.8.0
[58] gRbase_1.8-3.4 BiocGenerics_0.28.0 DEoptimR_1.0-8
[61] scales_1.0.0 DOSE_3.8.2 mvtnorm_1.0-11
[64] DBI_1.0.0 ggthemes_4.2.0 Rcpp_1.0.2
[67] viridisLite_0.3.0 xtable_1.8-4 progress_1.2.2
[70] htmlTable_1.13.1 gridGraphics_0.4-1 foreign_0.8-71
[73] bit_1.1-14 europepmc_0.3 preprocessCore_1.44.0
[76] Formula_1.2-3 stats4_3.5.3 DT_0.8
[79] htmlwidgets_1.3 httr_1.4.1 fgsea_1.8.0
[82] gplots_3.0.1.1 RColorBrewer_1.1-2 acepack_1.4.1
[85] ff_2.2-14 pkgconfig_2.0.2 XML_3.98-1.20
[88] farver_1.1.0 nnet_7.3-12 locfit_1.5-9.1
[91] dynamicTreeCut_1.63-1 polynom_1.4-0 labeling_0.3
[94] ggplotify_0.0.4 tidyselect_0.2.5 rlang_0.4.0
[97] reshape2_1.4.3 AnnotationDbi_1.44.0 munsell_0.5.0
[100] tools_3.5.3 RSQLite_2.1.2 statnet.common_4.3.0
[103] ggridges_0.5.1 evaluate_0.14 stringr_1.4.0
[106] ggdendro_0.1-20 yaml_2.2.0 knitr_1.24
[109] bit64_0.9-7 robustbase_0.93-5 caTools_1.17.1.2
[112] purrr_0.3.2 ggraph_1.0.2 RBGL_1.58.2
[115] pracma_2.2.5 xml2_1.2.1 DO.db_2.9
[118] compiler_3.5.3 rstudioapi_0.10 tibble_2.1.3
[121] tweenr_1.0.1 geneplotter_1.60.0 pcaPP_1.9-73
[124] stringi_1.4.3 lattice_0.20-38 Matrix_1.2-15
[127] vctrs_0.2.0 pillar_1.4.2 BiocManager_1.30.4
[130] triebeard_0.3.0 data.table_1.12.2 cowplot_1.0.0
[133] bitops_1.0-6 GenomicRanges_1.34.0 qvalue_2.14.1
[136] R6_2.4.0 latticeExtra_0.6-28 network_1.15
[139] KernSmooth_2.23-15 gridExtra_2.3 IRanges_2.16.0
[142] codetools_0.2-16 MASS_7.3-51.1 gtools_3.8.1
[145] assertthat_0.2.1 SummarizedExperiment_1.12.0 DESeq2_1.22.2
[148] S4Vectors_0.20.1 GenomeInfoDbData_1.2.0 intergraph_2.0-2
[151] parallel_3.5.3 hms_0.5.0 clusterProfiler_3.10.1
[154] grid_3.5.3 rpart_4.1-13 coda_0.19-3
[157] tidyr_0.8.3 rmarkdown_1.14 rvcheck_0.1.3
[160] ggforce_0.2.2 Biobase_2.42.0 WGCNA_1.68
[163] base64enc_0.1-3 `
Alright guys ( @matheuscburger and @pedrostrusso ), the time to submit CEMiTool to Bioconductor has come.
Our build is >50MB, because of the report files. We need to discuss this. 👀
Our build is >8MB, because of external data. Thanks for correcting me, @matheuscburger !
There are some warnings and some errors in the check step. We need to take a look at it as well. 👀
✅ Contain a NAMESPACE that imports all symbols used in the package, and exports just those symbols the package author identifies as appropriate. Use of a NAMESPACE implies that appropriate packages are mentioned in the Imports: field of the DESCRIPTION file.
✅ Contain a vignette that illustrates the major uses of the package. The vignette must be evaluated during package installation; a static vignette is not acceptable.
✅ Contain comprehensive help pages. This includes accurate description of function parameter and return values, and meaningful examples.
✅ Contain no extraneous files (e.g., ‘.DS_Store’, ‘.project’, ‘.svn’, etc.), files with invalid names (e.g., differing only in case), or code that cannot be distributed under the license specified by the author.
✅ Packages should have a descriptive name that is not already in use. See if it is by running biocLite("myPackageName"). You cannot have a package name that is case-insensitively equal to an existing package name in CRAN or Bioconductor.
Apparently it has to do with the sna package. Looking into it.
It's a really impressive working, and I tried to use this pakages to mine more intersesting information in my data recently. And I got the standard outputs files successfully. But in the last step, interaction visulization, I want to show my interested genes' position in network and furthermore, I want to only show the gene network whose highest degree level is same to my interested gene.
And for achieving the second thinking, I might work out by filtering the input interactions files, calculating the degree of each genes and filtering the highest genes and lowest genes. did you think can I use that way to achieve that ?
But that will be much better that we could select the key genes to display the position and degree of them.
Thanks
Take a look at this line:
R/modules.R - Line 61
We are using signed WGCNA.
I believe it would be interesting to perform ORA using EnrichR.
It is important to add a checking step to assure that only gene symbols are submitted to Enrichr.
API is available in CRAN at: https://cran.r-project.org/web/packages/enrichR/index.html
Error in xj[i, , drop = FALSE] : subscript out of bounds
Hi ,
Cemitool runs fine with 6 modules selected.
nmodules(cem_g)
[1] 6
My class column has 2 classes CLL/Normal. Get error when running GSEA-
cem_g <- mod_gsea(cem_g,verbose = TRUE)
Running GSEA
Calculating modules enrichment analysis for class CLL
Error in [.data.frame
(z_expr, , class_samples, drop = FALSE) :
undefined columns selected
I also tried with - cem_g <- mod_gsea(cem_g,gsea_scale= FALSE, verbose = TRUE)
but get the same error
Can you please help with this error?
When using 'cemitool' function with 'filter=TRUE' and different 'filter_pval' values, I obtain always the same number of genes in the file 'Tables/module.tsv' (the same obtained when using the default 'filter_pval=0.1') even getting different numbers of 'Selected data: XXXX genes selected' in the 'cem' object returned.
My code is:
library("CEMiTool")
df <- read.csv('all.htseq-count.tsv.rpkms.tsv', header=TRUE, row.names=1, sep='\t')
cem <- cemitool(df, apply_vst=TRUE, filter=TRUE, set_beta=16, verbose=TRUE, filter_pval=0.2)
cem
CEMiTool Object
write_files(cem, force=TRUE)
Am I missing something?
Thanks in advance, and congratulations for the tool,
Javier.
Hello,
I am trying to run CEMiTool with a reasonably large singel cell dataset. It is an exprs with about 17200 genes and 4700 cells.
When running the CEMiTool function, I get the following error:
Error: node stack overflow
Error during wrapup: node stack overflow
Is this expected (i.e. is there an upper limit for datasets when using CEMiTool?) Or it should work if I use a more powerful machine?
Thanks!
Function stat_overlap_modules in https://github.com/csbl-usp/CEMiTool/blob/master/R/integrate.R is removing more rows than expected.
See line 765.
I recomend changing the following one-liner:
df_output <- subset(df_output, Jaccard > jac_thresh & Fisherp < p_thresh & fdr < fdr_thresh)
To the following three lines:
df_output <- subset(df_output, Jaccard >= jac_thresh)
df_output <- subset(df_output, Fisherp <= p_thresh)
df_output <- subset(df_output, fdr <= fdr_thresh)
Hi,
I want to use this website to perform co-expression network analysis: https://cemitool.sysbio.tools/analysis. I just have 7 vs 7 samples. Can I use CEMiTool to perform co-expression network analysis?
Best,
Just to leave this documented.
I think that the grey Modules (M0) is one of the modules,because when you set n_genes = 4000, all 4000 genes are in one modules. Before, the grey module was not shown.
Hi there,
I have a data.frame with 274 obs and 5 var
After ""cem <- new_cem(expr0)""
the file has 4000 obs and 45 var
How can I see what's happening? Because ""head(expr0)" don't shows my IDs, it shows other names that I don't know what they mean.
Please, if someone could help me.
Why is 0.8 the best diss_thresh? The 0.8 gave only 3-4 A/B modules.
The higher the value, the less modules are created and more genes per module are present.
Include in find_modules an if clause for when beta = NA to reflect the values in the WGCNA FAQ.
Also, include a set_beta argument to hard code a beta value.
When I am trying to create a 'cem' object, this error appears: "error in seq.default(h[1], h[2], length.out = n) : 'to' must be a finite number". What it means, please?
Hi,
I have a problem about annotation step for my data.
When I have made categorical annotation for my sample, I didn't come across any problem, but I want use continuous variable instead of categorical variable to calculate module-trait association just like in WGCNA. Is this available for CEMiTool ?
I split my data two categories and generated module enrichment between them, therefore I want make that for my numerical categories.
Categorical annotation ;
SampleName Class
AD Parent
BD Parent
CM Children
IM Children
Above annotation worked to make module enrichment analysis between Parents and Children, but I want generate annotation like below and calculate module-trait association. How can I make this analysis with using CEMiTool ?
Numeric (continuous) annotation ;
SampleName CARS
AD 40
BD 38
CM 24
IM 22
Can you help with this?
Thanks your good R package and interest.
Best regards.
Add a functionality to the report to allow users to search for a particular gene and see in which module it is (if in any).
It would be interesting to have an argument in the PPI network to insert names os genes of interest in the Network figure.
Including sample annotation ...
Running Gene Set Enrichment Analysis ...
Running GSEA
Calculating modules enrichment analysis for class a1
Error in apply(z_expr[, class_samples], 1, mean) :
dim(X) must have a positive length
Hi,
I installed the package from the Bioconductor and tried the example script.
However, the following script failed.
gmt_fname <- system.file("extdata", "pathways.gmt", package="CEMiTool")
gmt_in <- read_gmt(gmt_fname)
The error message said:
Error in data.frame(..., check.names = FALSE) :
arguments imply differing number of rows: 1, 0
In addition: Warning message:
In strsplit(x, split = "\t") : input string 1 is invalid in this locale
Can you kindly deal with this bug?
Best,
Masato
Talking with Helder and @thiagodch we came to the conclusion that it would be interesting to color differently the genes that are in the network but are not part of the module generated by CEMiTool.
I will not have time to make these modifications.
I think these are the necessary steps to get the job done:
Version from master returns error when function is called inside nested loop. Code was working with Bioconductor version.
I believe that error is caused by opening a graphical device.
Error message:
<simpleError in (function (display = "", width, height, pointsize, gamma, bg, canvas, fonts, family, xpos, ypos, title, type, antialias) { if (display != "XImage") { check <- Sys.getenv("R_CHECK_SCREEN_DEVICE", "") msg <- "screen devices should not be used in examples etc" if (identical(check, "stop")) stop(msg, domain = NA) else if (identical(check, "warn")) warning(msg, immediate. = TRUE, noBreaks. = TRUE, domain = NA) } if (display == "" && .Platform$GUI == "AQUA" && is.na(Sys.getenv("DISPLAY", NA))) Sys.setenv(DISPLAY = ":0") new <- list() if (!missing(display)) new$display <- display if (!missing(width)) new$width <- width if (!missing(height)) new$height <- height if (!missing(gamma)) new$gamma <- gamma if (!missing(pointsize)) new$pointsize <- pointsize if (!missing(bg)) new$bg <- bg if (!missing(canvas)) new$canvas <- canvas if (!missing(xpos)) new$xpos <- xpos if (!missing(ypos)) new$ypos <- ypos if (!missing(title)) new$title <- title if (!checkIntFormat(new$title)) stop("invalid 'title'") if (!missing(type)) { new$type <- match.arg(type, c("Xlib", "cairo", "nbcairo", "dbcairo")) if (!capabilities("cairo") && type != "Xlib") warning("cairo-based types are not supported on this build - using "Xlib"") } if (!missing(family)) new$family <- family if (!missing(fonts)) new$fonts <- fonts if (!missing(antialias) && type != "Xlib") new$antialias <- match.arg(antialias, aa.cairo) d <- check.options(new, name.opt = ".X11.Options", envir = .X11env) if (d$type == "Xlib" && !missing(family)) { fns <- X11Fonts() if (!family %in% names(fns)) stop("unknown family for X11(type = "XLib")") d$fonts[1] <- fns[[family]] } type <- if (capabilities("cairo")) switch(d$type, cairo = 1L, nbcairo = 2L, dbcairo = 3L, 0L) else 0L if (display == "XImage") type <- 0L antialias <- match(d$antialias, aa.cairo) if (grepl("darwin", R.version$os)) check_for_XQuartz() .External2(C_X11, d$display, d$width, d$height, d$pointsize, d$gamma, d$colortype, d$maxcubesize, d$bg, d$canvas, d$fonts, NA_integer_, d$xpos, d$ypos, d$title, type, antialias, d$family) invisible()})(): a forked child should not open a graphics device>
Hi CEMiTool team, thanks for develop such a user-friendly tool. But I am not sure what file to provide to build the interaction network. Can you explained more?
@pedrostrusso please improve the vignette in vignettes/CEMiTool.Rmd.
Use the following command to build the vignette
devtools::build_vignettes()
Example: http://kbroman.org/pkg_primer/pages/vignettes.html
In the ggnetwork_fix branch I attempted to recreate the ggnetwork output for the interaction graphs using ggplot2 and ggrepel and it worked. However, now we have a few more warning messages about functions sharing the same names. Does anyone have any suggestions about how to address these problems?
Warning: replacing previous import ‘pracma::cutpoints’ by ‘sna::cutpoints’ when loading ‘CEMiTool’
Warning: replacing previous import ‘WGCNA::cor’ by ‘stats::cor’ when loading ‘CEMiTool’
Warning: replacing previous import ‘sna::degree’ by ‘igraph::degree’ when loading ‘CEMiTool’
Hi,
If I use default CEMiTool interaction file, then my result will be different than using of more comprehensive PPI files.
There are some databases like HitPredict which provide more comprehensive PPI files. Which should I use them ?
What do you recommend me ? CEMiTool interaction file (almost 188.000 interactions) is enough or not for publication ?
Thanks,
Regards,
Ran cemitool in the csbl server and the report did not show the ORA plot. I even set the options(bitmapType="cairo") as suggested by Lucas.
Hello,
I already know that standard beta value won't work with my data, so I intend to require diagnostic_report(cem)
to manually set it. However, I'm facing a problem with the graphs making:
counts <- read.table("DatExpr.txt", header = TRUE)
>row.names(counts) <- counts$genes
>counts <- counts[-c(1)]
>sample_annot <- read.table("cemitool-phenotypes.tsv", header = TRUE, sep = "\t")
>gene_sets <- read_gmt("blast2go_gene_sets.gmt")
> cem <- cemitool(counts, sample_annot, gene_sets, apply_vst = TRUE, filter = TRUE, force_beta = TRUE, sample_name_column = 'SampleName', class_column = 'Class', plot = TRUE, plot_diagnostics = TRUE, verbose = TRUE)
Including sample annotation ...
Plotting diagnostic plots ...
...Plotting mean and variance scatterplot ...
...Plotting expression histogram ...
...Plotting qq plot ...
...Plotting sample tree ...
Error in dev.off() : cannot shut down device 1 (the null device)
>diagnostic_report(cem)
Above, a few lines from my input data:
>head(counts)
#20223x15
Ac0h | Ac12h | Ac24h | At12h | At24h | Bc0h | Bc12h | Bc24h | Bt12h | Bt24h | Cc0h | Cc12h | Cc24h | Ct12h | Ct24h | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
gene20201 | 3 | 2 | 0 | 1 | 1 | 2 | 4 | 1 | 2 | 0 | 1 | 3 | 1 | 0 | 0 |
gene20203 | 41 | 14 | 3 | 8 | 15 | 14 | 8 | 3 | 9 | 4 | 11 | 10 | 8 | 9 | 3 |
gene20205 | 25 | 3 | 5 | 14 | 21 | 7 | 5 | 4 | 6 | 11 | 2 | 5 | 7 | 6 | 6 |
gene20206 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
gene20209 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
gene20210 | 11 | 9 | 2 | 1 | 12 | 0 | 4 | 2 | 4 | 2 | 2 | 2 | 3 | 3 | 2 |
>head(sample_annot)
#2x15
SampleName | Class |
---|---|
Ac0h | Control 0h |
Bc0h | Control 0h |
Cc0h | Control 0h |
Ac12h | Control 12h |
Bc12h | Control 12h |
Cc12h | Control 12h |
>head(gene_sets)
#136660x2
term | gene |
---|---|
GO:0005344 | gene2972 |
GO:0015749 | gene19777 |
GO:0015749 | gene9398 |
GO:0051188 | gene3204 |
GO:0051188 | gene12046 |
GO:0051188 | gene3706 |
I suppose there's something wrong with some of my data (although I've checked them several times), cem object is not right therefore when I call diagnostic_report(cem)
graphs can't be made thus there's no "device" to shut down, resulting in a html file with messages "Please create [...] plot" instead of graphs; but how can I be sure about it?
Best,
Carol
Hello,
CEMiTool is a wonderful tool! I always used WGCNA before.
I want to do the following things based on CEMiTool's results:
I don't know how to do these in CEMiTool, and I think a simple way to do is using functions in WGCNA. Can I do that? According to the paper of CEMiTool, the only difference between CEMiTool and WGCNA is beta selection: "Once a β value is chosen, subsequent steps for creating modules follow standard WGCNA procedure.".
Or how to extract information needed from the results of CEMiTool if not using WGCNA? Thank you in advance!
Bests,
Yiwei Niu
Hi ,
I am trying to run CEMiTool with a sample annotation file but get the following error-
cem <- cemitool(edata2.df, targets.ct, verbose = TRUE)
Including sample annotation ...
Plotting diagnostic plots ...
...Plotting mean and variance scatterplot ...
...Plotting expression histogram ...
...Plotting qq plot ...
...Plotting sample tree ...
Error: Must request at least one colour from a hue palette.
Since the program is running I guess input files are correct. Please help can't really identify the issue.
targets.ct relevant columns look like this:
SampleName Class
ABP73-2 dis.Untr
ABP73-3 dis.cll
ABP73-4 dis.ge
ABP73-5 dis.wt
ABP73-6 dis.gsk
ABP73-17 Normal.Untr
ABP73-18 Normal.cll
ABP73-19 Normal.ge
ABP73-20 Normal.wt
ABP73-21 Normal.gsk
and the expression file (edata2.df) like this-
ABP73-2 ABP73-3 ABP73-4 ABP73-5
RFC2 5.162862 4.871644 5.620174 5.257355
HSPA6 6.130446 6.914137 6.893282 5.951551
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.