A data set similar to this...
ID <- c(rep(10,4),rep(20,4),rep(30,4),rep(40,4),rep(50,4))
Activity <- rep(c("In","Start","Finish","Out"),5)
Rsn <- c(rep("Rsn1",4),rep("Rsn11",4),rep("Rsn111",4),rep("Rsn11",4),rep("Rsn111",4))
Inst <- seq(1,20,1)
Loc <- c(rep("Here",4),rep("There",4),rep("Anywhere",4),rep("Somewhere",4),rep("SomewhereElse",4))
dc <- data.frame(ID,Activity,Rsn,Inst,Loc)
ID Activity Rsn Inst Loc
10 In Rsn1 1 Here
10 Start Rsn1 2 Here
10 Finish Rsn1 3 Here
10 Out Rsn1 4 Here
20 In Rsn11 5 There
20 Start Rsn11 6 There
20 Finish Rsn11 7 There
20 Out Rsn11 8 There
30 In Rsn111 9 Anywhere
30 Start Rsn111 10 Anywhere
30 Finish Rsn111 11 Anywhere
30 Out Rsn111 12 Anywhere
40 In Rsn11 13 Somewhere
40 Start Rsn11 14 Somewhere
40 Finish Rsn11 15 Somewhere
40 Out Rsn11 16 Somewhere
50 In Rsn111 17 SomewhereElse
50 Start Rsn111 18 SomewhereElse
50 Finish Rsn111 19 SomewhereElse
50 Out Rsn111 20 SomewhereElse
the end result that I would like to end up with is this...
ID2 <- c(10,20,30,40,50)
In2 <- seq(1,20,4)
Start2 <- seq(2,20,4)
Finish2 <- seq(3,20,4)
Out2 <- seq(4,20,4)
Rsn2 <- c("Rsn1","Rsn11","Rsn111","Rsn11","Rsn111")
Loc2 <- c("Here","There","Anywhere","Somewhere","SomewhereElse")
dw <- data.frame(ID2, In2, Start2, Finish2, Out2, Rsn2,Loc2)
ID In2 Start2 Finish2 Out2 Rsn2 Loc2
10 1 2 3 4 Rsn1 Here
20 5 6 7 8 Rsn11 There
30 9 10 11 12 Rsn111 Anywhere
40 13 14 15 16 Rsn11 Somewhere
50 17 18 19 20 Rsn111 SomewhereElse
I have used tidyr, reshape and can't seem to get it right.
The data set has 816K lines and takes forever with loops and conditionals.
I have broken the dataset down by the locations, but it is still slow.
Thanks in advance.