title: Getting at the previous n-rows in a data frame?
body: <p>I have the following data frame.</p>
  
  <pre><code>date id value
  2012-01-01 1 0.3
  2012-01-01 2 0.5
  2012-01-01 3 0.2
  2012-01-01 4 0.8
  2012-01-01 5 0.2
  2012-01-01 6 0.8
  2012-01-01 7 0.1
  2012-01-01 8 0.4
  2012-01-01 9 0.3
  2012-01-01 10 0.2
  </code></pre>
  
  <p>There are several dates and for each date, I have 10 id values as shown above and a value field. What I would like to do is for every id find the previous n values in the "value" field. For example if n = 3 then I want the output to be as follows.</p>
  
  <pre><code>date id value value1 value2 value3
  2012-01-01 1 0.3 NA NA NA
  2012-01-01 2 0.5 NA NA NA
  2012-01-01 3 0.2 NA NA NA
  2012-01-01 4 0.8 0.2 0.5 0.3
  2012-01-01 5 0.2 0.8 0.2 0.5
  ...
  </code></pre>
  
  <p>Is there an easy way to get to this either through plyr or using mapply? Thanks much in advance.</p>