Re: [R] extracting elements from a list in vectorized form
[EMAIL PROTECTED] wrote: Hi; It seems to me that has probably been asked in the past. But I cannot find the track. I usually need to extract elements from a list and contruct vector from them; e.g., to create a table. Perhaps there is a way to directly extract them without looping? Simple example: S.lst $sublist.1 $sublist.1$age [1] 24.58719 $sublist.1$weight [1] 60.82861 $sublist.2 $sublist.2$age [1] 32.39551 $sublist.2$weight [1] 59.46347 etc. I would like to extract, e.g., directly all weights element from each sublist without looping. I know it is possible to do this as: unlist(S.lst)[paste(sublist.,1:length(S.lst),.weight,sep=)] but there is not some short-cut? something like S.lst[[1:length(S.lst)]]$weight ? I think this should do it: sapply(S.lst, [[, weight) -- O__ Peter Dalgaard Øster Farimagsgade 5, Entr.B c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~ - ([EMAIL PROTECTED]) FAX: (+45) 35327907 __ R-help@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.
Re: [R] extracting elements from a list in vectorized form
Perfect!! Thanks a lot! Javier --- [EMAIL PROTECTED] wrote: Hi; It seems to me that has probably been asked in the past. But I cannot find the track. I usually need to extract elements from a list and contruct vector from them; e.g., to create a table. Perhaps there is a way to directly extract them without looping? Simple example: S.lst $sublist.1 $sublist.1$age [1] 24.58719 $sublist.1$weight [1] 60.82861 $sublist.2 $sublist.2$age [1] 32.39551 $sublist.2$weight [1] 59.46347 etc. I would like to extract, e.g., directly all weights element from each sublist without looping. I know it is possible to do this as: unlist(S.lst)[paste(sublist.,1:length(S.lst),.weight,sep=)] but there is not some short-cut? something like S.lst[[1:length(S.lst)]]$weight ? I think this should do it: sapply(S.lst, [[, weight) -- O__ Peter Dalgaard Øster Farimagsgade 5, Entr.B c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~ - ([EMAIL PROTECTED]) FAX: (+45) 35327907 __ R-help@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.