On 10/15/2015 11:24 AM, Michael Lawrence wrote:
Btw, a subtle issue here is that elementLengths currently calls NROW(), not length(), and code might be relying on DataFrameList returning row counts. That behavior has proven convenient, so it would be nice not to lose it. I guess nrow() already does that, but anyway, lengths() is not the equivalent of elementLengths() there.
There is actually a big note in ?BiocGenerics::lengths about this. This means we will need to keep elementLengths() around but the plan is to rename it elementNROWS() (consistent with extractROWS). The current name is clearly a misnomer and a source of confusion. H.
On Wed, Sep 30, 2015 at 9:37 PM, Hervé Pagès <hpa...@fredhutch.org <mailto:hpa...@fredhutch.org>> wrote: On 09/30/2015 05:28 PM, Michael Lawrence wrote: It wasn't a conscious choice, but it would slow things down a bit. Not by much though, since we're already attempting dispatch on length(). I can make the change. That would be great. Thanks Michael! H. On Wed, Sep 30, 2015 at 1:33 PM, Hervé Pagès <hpa...@fredhutch.org <mailto:hpa...@fredhutch.org> <mailto:hpa...@fredhutch.org <mailto:hpa...@fredhutch.org>>> wrote: Hi Michael, I was expecting this to just work: base::lengths(IntegerList(1:4, 1:6)) but it doesn't: Error in base::lengths(IntegerList(1:4, 1:6)) : 'x' must be a list or atomic vector The man page says: This function loops over ‘x’ and returns a compatible vector containing the length of each element in ‘x’. Effectively, ‘length(x[[i]])’ is called for all ‘i’, so any methods on ‘length’ are considered. If length(x[[i]]) is called for all i then it should work on any object for which [[ is defined. Note that this is what happens with base::sapply(), base::mapply(), etc... they all use [[ internally. Do you know of any reason why lengths() doesn't do this? Thanks, H. On 09/28/2015 09:51 PM, Michael Lawrence wrote: That is the plan. Note that we already have elementLengths() that serves the same purpose. It was the direct inspiration for lengths(). On Mon, Sep 28, 2015 at 9:41 PM, Peter Hickey <peter.hic...@gmail.com <mailto:peter.hic...@gmail.com> <mailto:peter.hic...@gmail.com <mailto:peter.hic...@gmail.com>>> wrote: The lengths() function was added in R 3.2 to "get the length of each element of a list or atomic vector (is.atomic) as an integer or numeric vector." It seems useful to me to have also a similar method defined for the S4Vectors::List class (and subclasses). What do others think? [[alternative HTML version deleted]] _______________________________________________ Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org> <mailto:Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>> mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel [[alternative HTML version deleted]] _______________________________________________ Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org> <mailto:Bioc-devel@r-project.org <mailto:Bioc-devel@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: hpa...@fredhutch.org <mailto:hpa...@fredhutch.org> <mailto:hpa...@fredhutch.org <mailto:hpa...@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: hpa...@fredhutch.org <mailto:hpa...@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: hpa...@fredhutch.org Phone: (206) 667-5791 Fax: (206) 667-1319 _______________________________________________ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel