Consider 2 dataframes with identical column names and identical first column values.

```
df1 <- data.frame(col1 = rep(c("x", "y", "z"),4),
                col2 = as.factor(sample(12)),
                col3 = sample(c(TRUE, FALSE), 12, replace = TRUE))
df2 <- data.frame(col1 = rep(c("x", "y", "z"),4),
                col2 = as.factor(sample(12)),
                col3 = sample(c(TRUE, FALSE), 12, replace = TRUE))

```

I want to insert rows 1-3 from 1st dataframe after row 3 in the other dataframe, rows 4-6 after row 6, rows 7-9 after row 9 and so on. rbind and bind\_row functions do not seem to have any arguments that support such an operation. 

Any help on how to do this is appreciated.