title: What is the best way to access the second to last value in an R data.frame?
body: <p>Suppose I have a data.frame called SLV and I apply the tail()function. I will get this:</p>
  
  <pre><code>&gt; tail(SLV)
  
         SLV.Open SLV.High SLV.Low SLV.Close SLV.Volume SLV.Adjusted
  2010-12-06    28.99    29.64   28.88     29.51   57561800        29.51
  2010-12-07    29.95    30.00   28.03     28.08   69143800        28.08
  2010-12-08    28.33    28.46   27.34     27.70   58203800        27.70
  2010-12-09    28.10    28.36   27.83     28.03   36759200        28.03
  2010-12-10    27.80    28.11   27.38     27.98   30602700        27.98
  2010-12-13    28.84    29.04   28.59     28.87   25901800        28.87
  </code></pre>
  
  <p>tail() defaults to the last 6 values, but it's easy to get just the last 1 value.</p>
  
  <pre><code>&gt;tail(SLV, n=1)
  
         SLV.Open SLV.High SLV.Low SLV.Close SLV.Volume SLV.Adjusted
  2010-12-13    28.84    29.04   28.59     28.87   25901800        28.87
  </code></pre>
  
  <p>But what is the best way to return the second to last day? In our SLV example, it would be the line that is dated 2010-12-10.</p>