R ave , interaction . as.logical ave, 1s 0s , .
c(1,head(cummin(i != 1), -1)) 1 , . , 1 , 1 0 . head , .
df[as.logical(ave(df$z, interaction(df$x, df$y),
FUN=function(i) c(1,head(cummin(i != 1), -1)))), ]
x y z
1 a c 0
2 a c 0
3 a c 1
6 b c 0
7 b c 0
8 b c 0
9 b c 1
13 a d 0
14 a d 0
15 a d 0