[R] splitting data frame into fixed rows depending on column rep

Jim Lemon drjimlemon at gmail.com
Sun Dec 6 11:10:15 CET 2015


Hi Ragia,
Perhaps the easiest way is to split the data frame into a list by the
values of v1:

sdf<-split(df,df$v1)

Then rename the elements of sdf for convenience:

names(sdf)<-paste("v1",1:5,sep="_")

Now you can extract whatever you like"

sdf$v1_1$v2
[1] 3 4 8

Of course if you only want the values of v2:

split(df$v2,df$v1)
$`1`
[1] 3 4 8

$`2`
[1]  9 10  6

$`3`
[1] 4 5 8

$`4`
[1] 9 6 8

$`5`
[1] 4 5 6

Jim


On Sun, Dec 6, 2015 at 8:55 PM, Ragia Ibrahim <ragia11 at hotmail.com> wrote:

> Dear group,
>
> I have the following data frame
>
>             v1 v2  v3 v4 v5
> 1           1  3 1   3.5    1
> 2           1  4 3   3.5    1
> 3           1  8 3   3.5    1
> 4           2  9 8   2.5    1
> 5           2 10 9   2.5    1
> 6           2  6 3   1.5    1
> 7           3  4 3   2.0    1
> 8           3  5 3   1.0    1
> 9           3  8 3   1.0    1
> 10          4  9 8   2.0    1
> 11          4  6 5   1.0    1
> 12          4  8 4   1.0    1
> 13          5  4 3   2.0    1
> 14          5  5 3   2.0    1
> 15          5  6 5   2.0    1
>
> I'm trying to split it into data frames where each equal v1 so all v1==1
> in data frame and all v1==2 in separate data frame and so on.
> so it would be
>
>         v1 v2  v3 v4 v5
> 1           1  3 1   3.5    1
> 2           1  4 3   3.5    1
> 3           1  8 3   3.5    1
> then
>             v1 v2  v3 v4 v5
> 4           2  9 8   2.5    1
> 5           2 10 9   2.5    1
> 6           2  6 3   1.5    1
> .......
> ...
> and so on
>
> I tried
> a<- split(df, df$v1==1)
> but the resulting class is a list and when I try to access for example
> a$v2 it gave me NULL ??
>
> how can I split it an get each vector of v2 for each group,
> lots of thanks
> Ragia
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.

	[[alternative HTML version deleted]]



More information about the R-help mailing list