title: How do I slice a pandas time series on dates not in the index?
body: <p>I have a time series indexed by datetime.date. Here are the first knots of the series:</p>
  
  <pre><code>1999-12-31  0
  2000-06-30  170382.118454
  2000-12-29  -319260.443362
  </code></pre>
  
  <p>I want to slice from the beginning of the series until Dec 28th 2000, but this doesn't work since that date is not in the index (I get a KeyError when I try <code>original_series[:datetime.date(2000,12,28)]</code>. I've also tried converting the index to timestamps, but that gives very spurious results (it manufactures fake knots, see below), so I wondered if there's a good approach to this problem.</p>
  
  <pre><code>test = pd.Series(original_series.values, map(pd.Timestamp, original_series.index))
  </code></pre>
  
  <p>At a first glance, this looks alright:</p>
  
  <pre><code>1999-12-31         0.000000
  2000-06-30    170382.118454
  2000-12-29   -319260.443362
  </code></pre>
  
  <p>But then I try to do my slicing (where do those extra days in January 2000 come from?):</p>
  
  <pre><code>In [84]: test[:'2000-12-28']
  Out[84]: 
  1999-12-31         0.000000
  2000-06-30    170382.118454
  2000-01-03    -71073.979016
  2000-01-04    100498.744748
  2000-01-05     91104.743684
  2000-01-06     82290.255459
  </code></pre>