title: Creating a "Lagged" Data Frame
body: <p>I have the following data frame and want to shift all but the first two columns down. Basically, I want to see a 'lagged' data frame. There seems to be a lot on how to get this for a single column (see <a href="http://christophergandrud.blogspot.com/2013/05/slide-one-function-for-laglead.html" rel="nofollow">here</a>), but nothing to select most of the columns.</p>
  
  <pre><code>My data = 
  d1 &lt;- data.frame(month = c("jan", "feb", "mar", "apr", "may", "june"),
                  conv =  c(1, 3, 6, 2, 3, 8),
                  month = c("jan", "feb", "mar", "apr", "may", "june"),
                  visit =  c( 1,  2,  4,  8, 16, 32),
                  click =  c(64, 62, 36,  5,  6,  3))
  d1
  
  Desired output = 
  d2 &lt;- data.frame(month = c("jan", "feb", "mar", "apr", "may", "june"),
                  conv =  c(1, 3, 6, 2, 3, 8),
                  month = c(NA, "jan", "feb", "mar", "apr", "may"),
                  visit =  c( NA, 1,  2,  4,  8, 16),
                  click =  c(NA, 64, 62, 36,  5,  6))
  d2
  </code></pre>
  
  <p>Help?!</p>