无效的类“GRanges”对象:1:'x @ seqnames'与'x不平行

问题描述 投票:0回答:1

这个简单的代码:

library(GenomicRanges)

GRanges(c("chr1", "chr1", "chr1"), c(109810200, 109810201, 109810544))

以相当神秘的异常失败:

validObject(.Object)中的错误:无效的类“GRanges”对象:1:'x @ seqnames'与'x'无效类“GRanges”对象不平行:2:'x @ strand'与'x'不平行

另外,当我尝试提供seqlengths时:

GRanges(
  c("chr1", "chr1", "chr1"), 
  c(109810200, 109810201, 109810544),
  seqlengths=c(1, 1, 1))

我明白了:

.normargSeqlengths(seqlengths,seqnames)中的错误:提供的'seqlengths'的长度必须等于序列的数量

这表明在此过程中会丢弃一些数据。但我无法弄清楚它为什么会发生。

如果您对此处发生的事情有任何见解,我将不胜感激。

环境:

> sessionInfo()
R version 3.5.2 (2018-12-20)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux buster/sid

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.8.0
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.8.0

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] parallel  stats4    stats     graphics  grDevices utils     datasets 
[8] methods   base     

other attached packages:
[1] GenomicRanges_1.34.0 GenomeInfoDb_1.18.2  IRanges_2.16.0      
[4] S4Vectors_0.20.1     BiocGenerics_0.28.0 

loaded via a namespace (and not attached):
[1] zlibbioc_1.28.0        compiler_3.5.2         XVector_0.22.0        
[4] GenomeInfoDbData_1.2.0 RCurl_1.95-4.12        bitops_1.0-6 
r bioconductor genomicranges
1个回答
1
投票

我得到了同样的错误。然后我将seqnames和range转换为字符,有趣的是它有效!

© www.soinside.com 2019 - 2024. All rights reserved.