Question: How Do I Assign Names To Granges Without It Forcing Elementmetadata
0
gravatar for Jeremy Leipzig
7.0 years ago by
Philadelphia, PA
Jeremy Leipzig18k wrote:

It seems like the casting routine to assign names to GRanges from GappedAlignments is more natural than the GRanges constructor.

library("GenomicRanges")
feature1 <- GRanges(names="feature1",seqnames="chr1", IRanges(start=1, width=100), strand="*")

featureGA <- GappedAlignments(names="feature2", seqnames = Rle("chr1"), pos = as.integer(25),cigar = "100M", strand = strand("*"))
feature2<-as(feature2,"GRanges")

> feature1
GRanges with 1 range and 1 elementMetadata col:
      seqnames    ranges strand |       names
         <Rle> <IRanges>  <Rle> | <character>
  [1]     chr1  [1, 100]      * |    feature1
  ---
  seqlengths:
   chr1
     NA
> feature2
GRanges with 1 range and 0 elementMetadata cols:
       seqnames    ranges strand
          <Rle> <IRanges>  <Rle>
  feature2     chr1 [25, 124]      *
  ---
  seqlengths:
   chr1
     NA

both<-GRangesList(features=feature1,feature2=feature2)
Error in .Method(..., deparse.level = deparse.level) : 
  number of columns for arg 2 do not match those of first arg

> sessionInfo()
R version 2.15.0 (2012-03-30)
Platform: x86_64-redhat-linux-gnu (64-bit)

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

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

other attached packages:
[1] GenomicRanges_1.8.4 IRanges_1.14.2      BiocGenerics_0.2.0 

loaded via a namespace (and not attached):
[1] stats4_2.15.0 tools_2.15.0
• 3.5k views
ADD COMMENTlink modified 7.0 years ago by Steve Lianoglou5.0k • written 7.0 years ago by Jeremy Leipzig18k
2
gravatar for Steve Lianoglou
7.0 years ago by
Steve Lianoglou5.0k
US
Steve Lianoglou5.0k wrote:

Set the names() after the GRanges object is constructed:

feature1 <- GRanges(seqnames="chr1", IRanges(start=1, width=100), strand="*")
names(feature1) <- 'feature1'

featureGA <- GappedAlignments(names="feature2", seqnames = Rle("chr1"), pos = as.integer(25),cigar = "100M", strand = strand("*"))
feature2 <-as(featureGA,"GRanges")

Will almost get you what you want ...

GRangesList(features=feature1,feature2=feature2)
GRangesList of length 2:
$features 
GRanges with 1 range and 0 elementMetadata cols:
           seqnames    ranges strand
              <Rle> <IRanges>  <Rle>
  feature1     chr1  [1, 100]      *

$feature2 
GRanges with 1 range and 0 elementMetadata cols:
           seqnames    ranges strand
  feature2     chr1 [25, 124]      *

---
seqlengths:
 chr1
   NA

... almost

ADD COMMENTlink written 7.0 years ago by Steve Lianoglou5.0k
Please log in to add an answer.

Help
Access

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 2.3.0
Traffic: 1474 users visited in the last hour