roryk / bcbio.rnaseq Goto Github PK
View Code? Open in Web Editor NEWMostly deprecated in favor of : https://github.com/hbc/bcbioRNASeq. Quality control, differential gene/transcript expression and pathway analysis for bcbio RNA-seq runs
Mostly deprecated in favor of : https://github.com/hbc/bcbioRNASeq. Quality control, differential gene/transcript expression and pathway analysis for bcbio RNA-seq runs
Hi roryk,
I want to run bcbio-rnaseq to generate bcbio-nextgen report and differential expression analysis using DESeq2. My bcbio-nextgen has been successfully finished. When I use the the following command:
bcbio-rnaseq summarize ../config/seqc.yaml -f "~batch+panel" -d -o human -s
I got the output as below:
WARNING: update already refers to: #'clojure.core/update in namespace: incanter.core, being replaced by: #'incanter.core/update
Running DESeq2.
Running DEXSeq, this will take a long time.
Setting up DEXSeq template.
Setting up Sleuth template.
Setting up pathway analysis template.
Summary report can be found here /app/datamart/RNAseq-example/subset-test/final/../config/summary/qc-summary.Rmd
The running lasted only a few second and in the /config/summary/ directory I found only a qc-summary.Rmd file and a few tmp files that looks like R scripts.
How to make bcbio-rnaseq correctly run? Thanks a lot.
Hi @roryk ,
I would like the tool to compare different groups using deseq, edgeR,.. What is the field in the config file that assigns samples into different groups ?
Thanks !!!
Hello!
I am trying to subset a bcbiornaseq object to include fewer samples and then run deseq to do the differential analysis. I am having problems with (I assume) the DESeqDataSet object not understanding that I have subset the data and still looking for all the samples in the design. Is there a way to get around this? I have included my code and error message below.
If I run this on the whole bcb dataset and not the subset then I have no error message.
bcb <- bcbioRNASeq(
uploadDir = "final/",
interestingGroups = c("phenotype"),
organism = "Homo sapiens"
)
bcb_samples <- colnames(bcb)[c(7:9, 13:15)]
bcb_subset <- bcb[, bcb_samples]
dds <- as(bcb_subset, "DESeqDataSet")
design(dds) <- ~phenotype
dds <- DESeq(dds)
Error in designAndArgChecker(object, betaPrior) : factors in design formula must have samples for each level. this error can arise when subsetting a DESeqDataSet, in which all the samples for one or more levels of a factor in the design were removed. if this was intentional, use droplevels() to remove these levels, e.g.: dds$condition <- droplevels(dds$condition)
hi Rory:
make
...
Including stax-api-1.0.1.jar
Including tigris-0.1.1.jar
Including edn-java-0.4.4.jar
Including xalan-2.6.0.jar
Including xml-apis-ext-1.3.04.jar
Including xml-apis-1.3.04.jar
Created /raid/sonpham/bcbio/bcbio.rnaseq/bcbio.rnaseq-0.1.1a-SNAPSHOT-standalone.jar
cat bin/bcbio-rnaseq.template target/-standalone.jar > bin/bcbio-rnaseq
cat: target/-standalone.jar: No such file or directory
make: *** [all] Error 1
Hi
re: this piece of code in the function resources/comparisons/qPCR_foldchange.template
plot_FC = function(df) {
df = df[, c("id", "logFC", "algorithm")]
colnames(df) = c("id", "logFC", "method")
qpcr_foldchange = foldchange[, c("id", "logFC")]
df = merge(df, qpcr_foldchange, by="id")
colnames(df) = c("id", "seq_logFC", "method", "qPCR_logFC")
p = ggplot(df, aes(seq_logFC, qPCR_logFC)) + geom_point() + facet_grid(. ~ method) +
xlab(expression(paste(log["2"], " fold change via RNA-seq"))) +
ylab(expression(paste(log["2"], " fold change via qPCR")))
ggsave(filename=FC_file, plot=p)
}
I understand this piece of code plots the measured logFC from RNA-seq, versus the expected logFC obtained from the qPCR reference file.
I'm wondering however how a given gene is mapped between the RNA-seq file (e.g.,
deseq_HBRR_vs_UHRR.tsv) and the qPCR reference file (qpcr_HBRR_vs_UHRR.tidy).
the list of gene is different between both files, so I'm wondering how the mapping works between the 2.
example of genes from qpcr_HBRR_vs_UHRR.tidy
'18S'
'ABC1'
'ABCA1'
'ABCA2'
'ABCB1'
'ABCB11'
'ABCB6'
'ABCC1'
'ABCC11'
'ABCC2'
'ABCC4'
example of genes from deseq_HBRR_vs_UHRR.tsv
'ENSG00000223972'
'ENSG00000227232'
'ENSG00000243485'
'ENSG00000237613'
'ENSG00000268020'
'ENSG00000240361'
'ENSG00000186092'
'ENSG00000238009'
'ENSG00000239945'
'ENSG00000233750'
'ENSG00000237683'
'ENSG00000268903'
'ENSG00000269981'
Thanks!
Severine
Hi author,
After run the bcbio-nextgen, I have the final results :
2015-07-15_meiyanrnaseq2
Neuron31A_0h-701-2-ATTACT_ATTACT_L002_R1_001
Neuron31A_1h-702-2-TCCGGA_TCCGGA_L002_R1_001
Neuron31A_6h-703-2-CGCTCA_CGCTCA_L002_R1_001
Neuron32B_0h-704-2-GAGATT_GAGATT_L002_R1_001
Then , I ran the "bcbio-rnaseq compare" command, I got this error:
hoabo@son:~/example/bcbio_nextgen/meiyanrnaseq2/final$ bcbio-rnaseq compare
Usage: bcbio-rnaseq compare [options] project-file key
Options:
-h, --help
-n, --cores CORES 1 Number of cores
--counts-only Only run count-based analyses
--seqc Data is from a SEQC alignment
Arguments:
project-file A bcbio-nextgen project file
key Key in the metadata field to do pairwise comparisons
Thanks !!!
Thanks Roryk for the great pipeline. But it just yields exception when I run summarize command.
bcbio-rnaseq summarize 2015-07-15_rnaseq2/project-summary.yaml
Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:274)
at clojure.lang.RT.loadClassForName(RT.java:2098)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5018.invoke(core.clj:5530)
at clojure.core$load.doInvoke(core.clj:5529)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5336)
at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
at clojure.core$load_lib.doInvoke(core.clj:5374)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:619)
at clojure.core$load_libs.doInvoke(core.clj:5413)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:619)
at clojure.core$require.doInvoke(core.clj:5496)
at clojure.lang.RestFn.invoke(RestFn.java:703)
at bcbio.rnaseq.simulate$loading__4910__auto__.invoke(simulate.clj:1)
at bcbio.rnaseq.simulate__init.load(Unknown Source)
at bcbio.rnaseq.simulate__init.(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:274)
at clojure.lang.RT.loadClassForName(RT.java:2098)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5018.invoke(core.clj:5530)
at clojure.core$load.doInvoke(core.clj:5529)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5336)
at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
at clojure.core$load_lib.doInvoke(core.clj:5374)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:619)
at clojure.core$load_libs.doInvoke(core.clj:5413)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:619)
at clojure.core$require.doInvoke(core.clj:5496)
at clojure.lang.RestFn.invoke(RestFn.java:482)
at bcbio.rnaseq.core$loading__4910__auto__.invoke(core.clj:1)
at bcbio.rnaseq.core__init.load(Unknown Source)
at bcbio.rnaseq.core__init.(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:274)
at clojure.lang.RT.loadClassForName(RT.java:2098)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5018.invoke(core.clj:5530)
at clojure.core$load.doInvoke(core.clj:5529)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.lang.Var.invoke(Var.java:415)
at bcbio.rnaseq.core.(Unknown Source)
Caused by: java.io.FileNotFoundException: /bin/bcbio-rnaseq!/comparisons/baseprop.tsv (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.(FileInputStream.java:146)
at clojure.java.io$fn__8642.invoke(io.clj:242)
at clojure.java.io$fn__8577$G__8542__8584.invoke(io.clj:73)
at clojure.java.io$fn__8650.invoke(io.clj:260)
at clojure.java.io$fn__8577$G__8542__8584.invoke(io.clj:73)
at clojure.java.io$fn__8612.invoke(io.clj:169)
at clojure.java.io$fn__8551$G__8546__8558.invoke(io.clj:73)
at clojure.java.io$reader.doInvoke(io.clj:106)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at incanter.io$read_dataset.doInvoke(io.clj:66)
at clojure.lang.RestFn.invoke(RestFn.java:439)
at bcbio.rnaseq.simulator__init.load(Unknown Source)
at bcbio.rnaseq.simulator__init.(Unknown Source)
... 52 more
Hi Rory:
We used : lein run summarize /raid/final/project-summary.yaml -f "~ batch + panel"
and it says: Summary report can be found here /raid/final/summary/qc-summary.html
but in that founder, I just see 3 files:
deseq2-de.tmp
qc-summary.Rmd
qc-summary.tmp
Anything wrong?
Hi @roryk ,
When I run voom_limma_6_vs_7.R :
Rscript 2015-07-15_meiyanrnaseq2/de/voom_limma_6_vs_7.R
I got this error :
Thanks !!!
I missing this package ggdendro
used in this line:
>p = ggheatmap(cor(counts))
Loading required package: ggdendro
Loading required package: grid
Error in ggheatmap(cor(counts)) : could not find function "dendro_data"
In addition: Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘ggdendro’
Hi,
I followed the quick start guide, and have lein installed.
but when I run:
lein run simulate -s 5 -d /staging/bcbio.rnaseq/sim_test/
i see:
Running templates/deseq2.template.
but i don't see any results generated in the specified output directory.
Also, if the results of a bcbio-nextgen rnaseq are saved under /bcbio/seqc_test/work
how can I run
lein run compare to use that result directory?
Thanks
Severine
Hi @roryk ,
When i run :
Rscript 2015-07-15_meiyanrnaseq2/de/deseq2_6_vs_7.R
I got the error below :
Thanks !!!
Getting the following error on heatmap figures, but if you just run pheatmap on normalized counts, it works fine
heatmap_fn(cor(normalized_counts, method="spearman"))
Error in cut.default(a, breaks = 100) : 'breaks' are not unique
Called from: (function ()
{
.rs.breakOnError(TRUE)
})()
Hi Roryk,
when I run bcbio-rnaseq summarize it seem to me the path of the quant.sf files is wrong :
sf_files = file.path("..", "..", rownames(summarydata), "sailfish",
rownames(summarydata), "quant.sf")
should be in my case
sf_files = file.path("..", "..", rownames(summarydata), "sailfish", "quant", "quant.sf")
is this correct?
Thanks!
Hi ,
When i run the command "bcbio-rnaseq summarize project-summary.yaml", it is Ok such as the image below
When i add the FORMULA ' bcbio-rnaseq summarize project-summary.yaml -f "~ batch" ', it is error such as the invalid parameters
@notes: I updated the BCBIO-RNASEQ.
Please help me. Thanks !!!
Is possible to run the DE for only two levels of a set of metadata-to-test-on?
I have a project file with 5 different metadata-to-test-on (two different set of control and 3 different set of treatment) all in duplicate. I was wondering if is possible to use one control and one treatment at the time for the bcbio_rnaseq compare.
Thanks!
deseq2 gives error:
Error in results(dds, independentFiltering = TRUE, addMLE = TRUE) :
unused argument (addMLE = TRUE)
Hi @roryk ,
When i run :
Rscript 2015-07-15_meiyanrnaseq2/de/deseq2_l6_vs_l7.R
I got the error below :
What is the reason ?
Thanks !!!
Hi Roryk,
Just a question is the --organism still working?
Thanks!
Alessandro
Hi Rory:
It's still unclear from the manual how to assign sample to groups for differential expression analysis. It seems that the project-summary.yaml doesn't contain this grouping (conditions) information.
Hello
i was able to run successfully:
bcbio-rnaseq compare --seqc project-summary2.yaml panel
to completion, except for DESeq2, which version it seems i need to upgrade.
This command line created a folder called 'de'.
i can see there is a R script that got copied in this directory (qPCR_foldchange.R) so i tried running it with:
Rscript qPCR_foldchange.R
but I got the following error:
Type 'citation("pROC")' for a citation.
Attaching package: \u2018pROC\u2019
The following objects are masked from \u2018package:stats\u2019:
cov, smooth, var
Loading required package: methods
Saving 7 x 7 in image
Error in data.frame(PANEL = panel, ROW = rows, COL = cols, base) :
arguments imply differing number of rows: 0, 1
Calls: plot_FC ... facet_train_layout.grid -> layout_grid -> data.frame
Execution halted
any idea what the problem is?
Thanks!
Severine
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.