[R] 1st el of a list of vectors
Hervé Pagès
hpages at fhcrc.org
Tue Jul 22 07:54:32 CEST 2014
Hi Carol,
On 07/21/2014 09:10 PM, Richard M. Heiberger wrote:
> l = list(c(1,2), c(3,5,6), c(7))
>
> sapply(l, `[`, 1)
Using sapply() works but won't be very efficient if you have a very long
list. If you worry about efficiency, you can do the following (using the
IRanges package from Bioconductor):
> library(IRanges)
> eltlens <- elementLengths(l)
> unlist(l, use.names=FALSE)[cumsum(eltlens) - eltlens + 1L]
[1] 1 3 7
Only worth if the length of your list is > 100000 though...
Cheers,
H.
PS: See http://bioconductor.org/packages/release/bioc/html/IRanges.html
for how to install the IRanges package.
>
> On Mon, Jul 21, 2014 at 3:55 PM, carol white <wht_crl at yahoo.com> wrote:
>> Hi,
>> If we have a list of vectors of different lengths, how is it possible to retrieve the first element of the vectors of the list?
>>
>>
>> l = list(c(1,2), c(3,5,6), c(7))
>>
>> 1,3,7 should be retrieved
>>
>> Thanks
>>
>> Carol
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
--
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 fhcrc.org
Phone: (206) 667-5791
Fax: (206) 667-1319
More information about the R-help
mailing list