[R] How to get names of a list into df:s?
Henrique Dallazuanna
wwwhsd at gmail.com
Thu Feb 21 19:45:13 CET 2008
Try this:
g <- list(a=1:3, b=4:6, c=7:9)
with(stack(g), split(stack(g), ind))
On 21/02/2008, Lauri Nikkinen <lauri.nikkinen at iki.fi> wrote:
> R users,
>
> I have a simple lapply question.
>
> g <- list(a=1:3, b=4:6, c=7:9)
> g <- lapply(g, function(x) as.data.frame(x))
> lapply(g, function(x) cbind(x, var1 = rep(names(g), each=nrow(x))[1:nrow(x)]))
>
> I get
>
> $a
> x var1
> 1 1 a
> 2 2 a
> 3 3 a
>
> $b
> x var1
> 1 4 a
> 2 5 a
> 3 6 a
>
> $c
> x var1
> 1 7 a
> 2 8 a
> 3 9 a
>
> And I would like to have
>
> $a
> x var1
> 1 1 a
> 2 2 a
> 3 3 a
>
> $b
> x var1
> 1 4 b
> 2 5 b
> 3 6 b
>
> $c
> x var1
> 1 7 c
> 2 8 c
> 3 9 c
>
> How should I modify my lapply clause to achieve this?
>
> Best regards,
> Lauri
>
> > sessionInfo()
> R version 2.6.1 (2007-11-26)
> i386-apple-darwin8.10.1
>
> locale:
> C
>
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
>
> ______________________________________________
> 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.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
More information about the R-help
mailing list