0

data set looks like

var1 var2
a    1
a    1
b    2
b    2
a    1
a    1
c    3 
c    3

new data set should be:

var1 var2 id
a    1    1
a    1    1
b    2    2
b    2    2
a    1    3
a    1    3
c    3    4
c    3    4
Andre Elrico
  • 10,956
  • 6
  • 50
  • 69
atn
  • 11
  • 2
  • @zx8754 IMO your suggestion is not general enough. It works only on the "badly chosen" example. var1 and var2 could differ. Probably will differ. – Andre Elrico Jul 23 '18 at 13:47
  • @AndreElrico yes, that’s why just posted a link instead of of closing. – zx8754 Jul 23 '18 at 13:53

1 Answers1

0

I use data.table

df1<-
data.table::fread("var1 var2
a    1
a    1
b    2
b    2
a    1
a    1
c    3 
c    3")

df1$id <- data.table::rleidv(df1)

#   var1 var2 id
#1:    a    1  1
#2:    a    1  1
#3:    b    2  2
#4:    b    2  2
#5:    a    1  3
#6:    a    1  3
#7:    c    3  4
#8:    c    3  4
Andre Elrico
  • 10,956
  • 6
  • 50
  • 69