Re: [Bioc-devel] Bug Report - for goseq - for RefSeq Genes track - RefSeq identifiers or Entrez Gene ID ?
Hi Sonali, Thanks for reporting this. I’ve moved away from Entrez IDs for refseq with newer genome versions, as I think goseq should take the refs symbols directly. Documentation still needs to be updated for this. It’s concerning that you’re seeing this behaviour for hg19, so I’ll look into it. A work around is to use the Entrez IDs and provide goseq with the flag “knownGene” rather than “refGene”. I’m currently on leave until January, so a fix might be slow. Cheers, Nadia. > On 10 Oct 2015, at 8:15 am, Arora, Sonaliwrote: > > Hi everyone, > > I am using goseq to perform Gene Ontology analysis of RNA-seq data and I > think I found the following bug. > > Since my RNA-seq data was aligned using Refseq table - so I need to > supply id as "refGene" which are actually EntrezId's from > goseq::supportedGeneIDs() > > The bug is - that the internal function(getgo) is expecting refseq > identifiers and the external function (goseq) is expecting entrez id's.. > > When I use refGene as id ( which is actually an entrez gene ids). I get > the following error - > >> pwf = nullp(genes, "hg19", "refGene") > Loading hg19 length data... > Warning message: > In pcls(G) : initial point very close to some inequality constraints >> GO.wall = goseq(pwf, "hg19", "refGene") > Fetching GO annotations... > Error in names(tmp) = rep(names(map), times = as.numeric(summary(map)[, : > attempt to set an attribute on NULL > > > After some debugging, I find that internal function getgo() returns a > vector of NULL's using "Entrez Gene Id" as id. > >> go = getgo(names(genes), "hg19", "refGene") >> head(go) > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > The last line of the function goseq::getgo() seems to be the issue.. > > Browse[2]> head(names(user2cat)) > [1] "NM_14" "NM_15" "NM_16" "NM_17" "NM_18" "NM_19" > Browse[2]> head(genes) > [1] "1" "100" "1000" "1" "10001" "100037417" > Browse[2]> head(user2cat[toupper(genes)]) > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > $ > NULL > > If I give the getgo() function refseq identifiers instead of entrez id, > then the internal function getgo works - but the nullp function fails as > it is still expecting entrez gene id. > >> test_genes <- c(0, 0,1,0,0,0) >> names(test_genes) =c("NM_14", "NM_15", "NM_16", "NM_17", > + "NM_18", "NM_19") >> go = getgo(names(test_genes), "hg19", "refGene") >> names(go) > [1] "NM_14" "NM_15" "NM_16" "NM_17" "NM_18" "NM_19" >> pwf = nullp(test_genes, "hg19", "refGene") > Loading hg19 length data... > Error in getlength(names(DEgenes), genome, id) : > The gene names specified do not match the gene names for genome hg19 > and ID refGene. > Gene names given were: NM_14, NM_15, NM_16, NM_17, > NM_18, NM_19, NA, NA, NA, NA > Required gene names are: 84251, 113451, 25932, 55707, 55707, 84871, > 50651, 55707, 7049, 1629 > > A reproducible example - > > # case - 1 > test_genes <- c(0, 0,1,0,0,0) > names(test_genes) <- c(1,100,1000, 1, 10001, 100037417) > go = getgo(names(test_genes), "hg19", "refGene") > > # case -2 > names(test_genes) =c("NM_14", "NM_15", "NM_16", "NM_17", > "NM_18", "NM_19") > go = getgo(names(test_genes), "hg19", "refGene") > pwf = nullp(test_genes, "hg19", "refGene") > > >> sessionInfo() > R version 3.2.2 RC (2015-08-09 r68965) > Platform: x86_64-w64-mingw32/x64 (64-bit) > Running under: Windows 7 x64 (build 7601) Service Pack 1 > > locale: > [1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United > States.1252LC_MONETARY=English_United States.1252 LC_NUMERIC=C > [5] LC_TIME=English_United States.1252 > > attached base packages: > [1] parallel stats4stats graphics grDevices utils datasets > methods base > > other attached packages: > [1] org.Hs.eg.db_3.2.2AnnotationDbi_1.31.19 IRanges_2.3.24 > S4Vectors_0.7.22 Biobase_2.29.1 BiocGenerics_0.15.10 > goseq_1.21.1 RSQLite_1.0.0 > [9] DBI_0.3.1 geneLenDataBase_1.5.0 BiasedUrn_1.06.1 > > loaded via a namespace (and not attached): > [1] XVector_0.9.4 GenomicRanges_1.21.30 > zlibbioc_1.15.0GenomicAlignments_1.5.18 > BiocParallel_1.3.54lattice_0.20-33 > [7] GenomeInfoDb_1.5.16tools_3.2.2 grid_3.2.2 > SummarizedExperiment_0.3.9 nlme_3.1-122 mgcv_1.8-7 > [13] lambda.r_1.1.7 futile.logger_1.4.1 > Matrix_1.2-2 rtracklayer_1.29.28 > futile.options_1.0.0 bitops_1.0-6 > [19] RCurl_1.95-4.7 biomaRt_2.25.3 > GO.db_3.2.2GenomicFeatures_1.21.31 > Biostrings_2.37.8 Rsamtools_1.21.20 > [25] XML_3.98-1.3 > > Please advise. > > Thanks and Regards, > Sonali. > >
[Bioc-devel] error in stable AnnotationHub
Using Bioconductor 3.1 and the following code library(AnnotationHub) ah <- AnnotationHub() ah[["AH28868"]] I get an error like retrieving 1 resources |==| 100% Error in value[[3L]](cond) : failed to load hub resource ‘E003-DNase.hotspot.broad.bed.gz’ of class EpigenomeRoadmapFile; reason: length of 'chrom' greater than length of 'ranges' In addition: There were 50 or more warnings (use warnings() to see the first 50) Best, Kasper [[alternative HTML version deleted]] ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Rd] A where() functions that does what exists() does but return the environment when object lives?
I'd start looking at getAnywhere(). Best, Uwe On 10.10.2015 01:18, Henrik Bengtsson wrote: Hi, exists("foo", inherits=TRUE) check whether an object named "foo" exists, and get("foo", inherits=TRUE) retrieves it. I'm looking for a similar function to exists() that returns the environment where the object "foo" exists, iff at all. If not found, NULL is returned. Does that exist? EXAMPLE #1: sample2 <- base::sample env <- where("sample2", inherits=TRUE) env Note the difference to: obj <- get("sample2", inherits=TRUE) environment(obj) EXAMPLE #2: a <- 1 foo <- function() { b <- 2; list(a=where("a", inherits=TRUE), b=where("b", inherits=TRUE)) } foo() $a $b foo() $a $b I do understand that I can implement such a function myself, but I prefer not to. Thanks, Henrik __ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel __ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
[Rd] MiKTeX's withdrawal of texi2dvi.exe
MiKTeX has abruptly removed texi2dvi.exe from its distribution. (MiKTeX broke its updating process earlier and an attempted update trashed the updater on my installation so I was forced to make a fresh install of the current distribution. I do not know if updates remove a currently installed texi2dvi.exe.) This has two consequences: 1) It is used by tools::texi2dvi() if found. As far as I can tell texify.exe is a sufficient replacement there, so you can set options(texi2dvi = "texify") (and R-patched/R-devel have been changed to try that). Otherwise emulation will be used and does work, less robustly. 2) It was used to make manuals when building R from sources. This has been worked around in R-patched/R-devel. If you need to build an earlier version of R, edit doc/manuals/Makefile.win from ifeq "$(MIKTEX)" "TRUE" R_TEXOPTS = --include-directory=../../share/texmf/tex/latex TEXI2DVI = texi2dvi else R_TEXOPTS = TEXI2DVI = endif setting the first TEXI2DVI line to TEXI2DVI = TEXINDEX=/Rtools/bin/texindex.exe texify altering the full path to texindex.exe as required (being on the PATH is not sufficient). (For current versions, set this in MkRules.local.) -- Brian D. Ripley, rip...@stats.ox.ac.uk Emeritus Professor of Applied Statistics, University of Oxford 1 South Parks Road, Oxford OX1 3TG, UK __ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
[Rd] R CMD check --as-cran without qpdf
Today, a package that has an HTML vignette (but no PDF vignette) failed R CMD check --as-cran on a system without qpdf. I think the warning originates here [1], due to a premature check for the existence of qpdf [2]. Setting R_QPDF=true (as in /bin/true) helped, but perhaps it's possible to check qpdf existence only when it matters. I have attached a patch (untested) that could serve as a starting point. The code links correspond to SVN revision 69500. Thanks. Best regards Kirill [1] https://github.com/wch/r-source/blob/f42ee5e7ecf89a245afd6619b46483f1e3594ab7/src/library/tools/R/check.R#L322-L326, [2] https://github.com/wch/r-source/blob/f42ee5e7ecf89a245afd6619b46483f1e3594ab7/src/library/tools/R/check.R#L4426-L4428 diff --git src/library/tools/R/check.R src/library/tools/R/check.R index a508453..e4e5027 100644 --- src/library/tools/R/check.R +++ src/library/tools/R/check.R @@ -319,11 +319,7 @@ setRlibs <- paste(" file", paste(sQuote(miss[f]), collapse = ", "), "will not be installed: please remove it\n")) } -if (dir.exists("inst/doc")) { -if (R_check_doc_sizes) check_doc_size() -else if (as_cran) -warningLog(Log, "'qpdf' is needed for checks on size reduction of PDFs") -} +if (R_check_doc_sizes && dir.exists("inst/doc")) check_doc_size() if (dir.exists("inst/doc") && do_install) check_doc_contents() if (dir.exists("vignettes")) check_vign_contents(ignore_vignettes) if (!ignore_vignettes) { @@ -2129,12 +2125,18 @@ setRlibs <- check_doc_size <- function() { -## Have already checked that inst/doc exists and qpdf can be found +## Have already checked that inst/doc exists pdfs <- dir('inst/doc', pattern="\\.pdf", recursive = TRUE, full.names = TRUE) pdfs <- setdiff(pdfs, "inst/doc/Rplots.pdf") if (length(pdfs)) { checkingLog(Log, "sizes of PDF files under 'inst/doc'") +if (!nzchar(Sys.which(Sys.getenv("R_QPDF", "qpdf" { +if (as_cran) +warningLog(Log, "'qpdf' is needed for checks on size reduction of PDFs") +return() +} + any <- FALSE td <- tempfile('pdf') dir.create(td) @@ -4424,8 +4426,7 @@ setRlibs <- config_val_to_logical(Sys.getenv("_R_CHECK_PKG_SIZES_", "TRUE")) && nzchar(Sys.which("du")) R_check_doc_sizes <- - config_val_to_logical(Sys.getenv("_R_CHECK_DOC_SIZES_", "TRUE")) && -nzchar(Sys.which(Sys.getenv("R_QPDF", "qpdf"))) + config_val_to_logical(Sys.getenv("_R_CHECK_DOC_SIZES_", "TRUE")) R_check_doc_sizes2 <- config_val_to_logical(Sys.getenv("_R_CHECK_DOC_SIZES2_", "FALSE")) R_check_code_assign_to_globalenv <- __ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Re: [Rd] MiKTeX's withdrawal of texi2dvi.exe
On Sat, Oct 10, 2015 at 8:02 AM, Prof Brian Ripleywrote: > > It was used to make manuals when building R from sources. This has been > worked around in R-patched/R-devel. If you need to build an earlier version > of R, edit doc/manuals/Makefile.win ... Thank you for the fix. FWIW, texi2dvi.exe was actually removed quite a while ago (1 year?). A copy of an older miktex build of the current miktex branch that still includes texi2dvi is available here:http://www.stat.ucla.edu/~jeroen/mingw-w64 . Perhaps it is worth archiving this somewhere to be able to re-build older versions of R on Windows in the future. __ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel