[Bioc-devel] as.character method for GenomicRanges?
Tim Triche, Jr.
tim.triche at gmail.com
Tue Sep 15 19:51:16 CEST 2015
rad, I was just about to say, "hey, I've written that function in 3
different places, I think I could send in a patch..." and then of course
Herve is on it.
I need to remember to leave things to the professionals...
--t
On Tue, Sep 15, 2015 at 10:38 AM, Hervé Pagès <hpages at fredhutch.org> wrote:
> Hi Michael and Michael,
>
> It's on its way. Probably before the end of the week. Thanks for the
> reminder!
>
> H.
>
> On 09/15/2015 10:07 AM, Michael Love wrote:
>
>> +1
>>
>> I was in need of this function yesterday and generally about once a
>> week, when looking up ranges in IGV or UCSC.
>>
>> On Tue, Sep 15, 2015 at 12:59 PM, Michael Lawrence
>> <lawrence.michael at gene.com <mailto:lawrence.michael at gene.com>> wrote:
>>
>> Did this as.character method ever get added? It was a good idea, and
>> we
>> should add it even though we haven't figured out the table stuff
>> yet. It's
>> fine if it appends the strand whenever there is at least one range
>> with +/-.
>>
>> Michael
>>
>> On Mon, Apr 27, 2015 at 2:23 PM, Hervé Pagès <hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>> wrote:
>>
>> > On 04/27/2015 02:15 PM, Michael Lawrence wrote:
>> >
>> >> It would be nice to have a single function call that would hide
>> these
>> >> details. It could probably be made more efficient also by avoiding
>> >> multiple matching, unnecessary revmap lists, etc.
>> tableAsGRanges() is
>> >> not a good name but it conveys what I mean (does that make it
>> actually
>> >> good?).
>> >>
>> >
>> > There is nothing specific to GRanges here. We're just reporting the
>> > frequency of unique elements in a metadata column so this belongs
>> to
>> > the "extended" Vector API in the same way that
>> findMatches/countMatches
>> > do.
>> >
>> > H.
>> >
>> >
>> >> On Mon, Apr 27, 2015 at 12:23 PM, Hervé Pagès
>> <hpages at fredhutch.org <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org <mailto:hpages at fredhutch.org>>>
>> wrote:
>> >>
>> >> On 04/24/2015 11:41 AM, Michael Lawrence wrote:
>> >>
>> >> Taking this a bit off topic but it would be nice if we
>> could get
>> >> the
>> >> GRanges equivalent of as.data.frame(table(x)), i.e.,
>> unique(x)
>> >> with a
>> >> count mcol. Should be easy to support but what should
>> the API be
>> >> like?
>> >>
>> >>
>> >> This was actually the motivating use case for introducing
>> >> findMatches/countMatches a couple of years ago:
>> >>
>> >> ux <- unique(x)
>> >> mcols(ux)$Freq <- countMatches(ux, x)
>> >>
>> >> Don't know what a good API would be to make this even more
>> >> straightforward though. Maybe via some extra argument to
>> unique()
>> >> e.g. 'with.freq'? This is kind of similar to the 'with.revmap'
>> >> argument of reduce(). Note that unique() could also support
>> the
>> >> 'with.revmap' arg. Once it does, the 'with.freq' arg can also
>> >> be implemented by just calling elementLengths() on the
>> "revmap"
>> >> metadata column.
>> >>
>> >> H.
>> >>
>> >>
>> >> On Fri, Apr 24, 2015 at 10:54 AM, Hervé Pagès
>> >> <hpages at fredhutch.org <mailto:hpages at fredhutch.org>
>> <mailto:hpages at fredhutch.org <mailto:hpages at fredhutch.org>>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>>>
>> >> wrote:
>> >>
>> >> On 04/24/2015 10:18 AM, Michael Lawrence wrote:
>> >>
>> >> It is a great idea, but I'm not sure I would
>> use it to
>> >> implement
>> >> table(). Allocating those strings will be
>> costly. Don't
>> >> we
>> >> already have
>> >> the 4-way int hash? Of course, my intuition
>> might be
>> >> completely
>> >> off here.
>> >>
>> >>
>> >> It does use the 4-way int hash internally.
>> as.character()
>> >> is only used
>> >> at the very-end to stick the names on the returned
>> table
>> >> object.
>> >>
>> >> H.
>> >>
>> >>
>> >>
>> >> On Fri, Apr 24, 2015 at 9:59 AM, Hervé Pagès
>> >> <hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>>>> wrote:
>> >>
>> >> Hi Pete,
>> >>
>> >> Excellent idea. That will make things like
>> table()
>> >> work
>> >> out-of-the-box
>> >> on GenomicRanges objects. I'll add that.
>> >>
>> >> Thanks,
>> >> H.
>> >>
>> >>
>> >>
>> >> On 04/24/2015 09:43 AM, Peter Haverty wrote:
>> >>
>> >> Would people be interested in having
>> this:
>> >>
>> >> setMethod("as.character",
>> "GenomicRanges",
>> >> function(x) {
>> >> paste0(seqnames(x), ":",
>> >> start(x), "-",
>> >> end(x))
>> >> })
>> >>
>> >> ?
>> >>
>> >> I find myself doing that a lot to make
>> unique
>> >> names or for
>> >> output that
>> >> goes to collaborators. I suppose we
>> might
>> >> want to tack
>> >> on the
>> >> strand if it
>> >> isn't "*". I have some code for going
>> the other
>> >> direction too,
>> >> if there is
>> >> interest.
>> >>
>> >>
>> >>
>> >> Pete
>> >>
>> >> ____________________
>> >> Peter M. Haverty, Ph.D.
>> >> Genentech, Inc.
>> >> phaverty at gene.com <mailto:phaverty at gene.com>
>> <mailto:phaverty at gene.com <mailto:phaverty at gene.com>>
>> >> <mailto:phaverty at gene.com <mailto:phaverty at gene.com>
>> <mailto:phaverty at gene.com <mailto:phaverty at gene.com>>>
>> >> <mailto:phaverty at gene.com
>> <mailto:phaverty at gene.com> <mailto:phaverty at gene.com
>> <mailto:phaverty at gene.com>>
>> >> <mailto:phaverty at gene.com <mailto:phaverty at gene.com>
>> <mailto:phaverty at gene.com <mailto:phaverty at gene.com>>>>
>> >>
>> >> [[alternative HTML version
>> deleted]]
>> >>
>> >>
>> _______________________________________________
>> >> Bioc-devel at r-project.org <mailto:Bioc-devel at r-project.org>
>> <mailto:Bioc-devel at r-project.org <mailto:Bioc-devel at r-project.org>>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> >>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> >>>
>> >> mailing list
>> >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> >>
>> >>
>> >> --
>> >> Hervé Pagès
>> >>
>> >> Program in Computational Biology
>> >> Division of Public Health Sciences
>> >> Fred Hutchinson Cancer Research Center
>> >> 1100 Fairview Ave. N, M1-B514
>> >> P.O. Box 19024
>> >> Seattle, WA 98109-1024
>> >>
>> >> E-mail: hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org <mailto:hpages at fredhutch.org
>> >>>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>>>
>> >> Phone: (206) 667-5791
>> <tel:%28206%29%20667-5791> <tel:%28206%29%20667-5791>
>> >> <tel:%28206%29%20667-5791>
>> >> <tel:%28206%29%20667-5791>
>> >> Fax: (206) 667-1319
>> <tel:%28206%29%20667-1319> <tel:%28206%29%20667-1319>
>> >> <tel:%28206%29%20667-1319>
>> >> <tel:%28206%29%20667-1319>
>> >>
>> >>
>> >>
>> _______________________________________________
>> >> Bioc-devel at r-project.org <mailto:Bioc-devel at r-project.org>
>> <mailto:Bioc-devel at r-project.org <mailto:Bioc-devel at r-project.org>>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> >>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>
>> >> <mailto:Bioc-devel at r-project.org
>> <mailto:Bioc-devel at r-project.org>>>> mailing list
>> >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> >>
>> >>
>> >>
>> >> --
>> >> Hervé Pagès
>> >>
>> >> Program in Computational Biology
>> >> Division of Public Health Sciences
>> >> Fred Hutchinson Cancer Research Center
>> >> 1100 Fairview Ave. N, M1-B514
>> >> P.O. Box 19024
>> >> Seattle, WA 98109-1024
>> >>
>> >> E-mail: hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>
>> >> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org> <mailto:hpages at fredhutch.org
>> <mailto:hpages at fredhutch.org>>>
>> >> Phone: (206) 667-5791 <tel:%28206%29%20667-5791>
>> <tel:%28206%29%20667-5791>
>> >> <tel:%28206%29%20667-5791>
>> >> Fax: (206) 667-1319 <tel:%28206%29%20667-1319>
>> <tel:%28206%29%20667-1319>
>> >> <tel:%28206%29%20667-1319>
>> >>
>> >>
>> >>
>> >> --
>> >> Hervé Pagès
>> >>
>> >> Program in Computational Biology
>> >> Division of Public Health Sciences
>> >> Fred Hutchinson Cancer Research Center
>> >> 1100 Fairview Ave. N, M1-B514
>> >> P.O. Box 19024
>> >> Seattle, WA 98109-1024
>> >>
>> >> E-mail: hpages at fredhutch.org <mailto:hpages at fredhutch.org>
>> <mailto:hpages at fredhutch.org <mailto:hpages at fredhutch.org>>
>> >> Phone: (206) 667-5791 <tel:%28206%29%20667-5791>
>> <tel:%28206%29%20667-5791>
>> >> Fax: (206) 667-1319 <tel:%28206%29%20667-1319>
>> <tel:%28206%29%20667-1319>
>> >>
>> >>
>> >>
>> > --
>> > Hervé Pagès
>> >
>> > Program in Computational Biology
>> > Division of Public Health Sciences
>> > Fred Hutchinson Cancer Research Center
>> > 1100 Fairview Ave. N, M1-B514
>> > P.O. Box 19024
>> > Seattle, WA 98109-1024
>> >
>> > E-mail: hpages at fredhutch.org <mailto:hpages at fredhutch.org>
>> > Phone: (206) 667-5791 <tel:%28206%29%20667-5791>
>> > Fax: (206) 667-1319 <tel:%28206%29%20667-1319>
>> >
>>
>> [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> Bioc-devel at r-project.org <mailto:Bioc-devel at r-project.org> mailing
>> list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>>
>>
>>
> --
> Hervé Pagès
>
> Program in Computational Biology
> Division of Public Health Sciences
> Fred Hutchinson Cancer Research Center
> 1100 Fairview Ave. N, M1-B514
> P.O. Box 19024
> Seattle, WA 98109-1024
>
> E-mail: hpages at fredhutch.org
> Phone: (206) 667-5791
> Fax: (206) 667-1319
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
[[alternative HTML version deleted]]
More information about the Bioc-devel
mailing list