[Bioc-devel] as.character method for GenomicRanges?
Hervé Pagès
hpages at fredhutch.org
Mon Apr 27 23:23:34 CEST 2015
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>> 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>>> 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>>>> 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>>>
>
> [[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>>>
> 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>
>
>
> _______________________________________________
> 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>>
> 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>
>
>
--
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
More information about the Bioc-devel
mailing list