title: Interpolate and fill pandas dataframe with datetime index
body: <p>Hi I'm trying to interpolate a Dataframe where I have a datetimeIndex index.</p>
  
  <p>Here's the data</p>
  
  <pre><code>res = pd.DataFrame(cursor.execute("SELECT DATETIME,VALUE FROM {} WHERE DATETIME &gt; ? AND DATETIME &lt; ?".format(table),[start,end]).fetchall(),columns=['date','value'])
  res.set_index('date',inplace=True)
  </code></pre>
  
  <p>which produces</p>
  
  <pre><code>2013-01-31 00:00:00   517  
  2012-12-31 00:00:00   263  
  2012-11-30 00:00:00  1917  
  2012-10-31 00:00:00   391  
  2012-09-30 00:00:00   782  
  2012-08-31 00:00:00   700  
  2012-07-31 00:00:00   799  
  2012-06-30 00:00:00   914  
  2012-05-31 00:00:00   141  
  2012-04-30 00:00:00   342  
  2012-03-31 00:00:00   199  
  2012-02-29 00:00:00   533  
  2012-01-31 00:00:00  1393  
  2011-12-31 00:00:00   497  
  2011-11-30 00:00:00  1457  
  2011-10-31 00:00:00   997  
  2011-09-30 00:00:00   533  
  2011-08-31 00:00:00   626  
  2011-07-31 00:00:00  1933  
  2011-06-30 00:00:00  4248  
  2011-05-31 00:00:00  1248  
  2011-04-30 00:00:00   904  
  2011-03-31 00:00:00  3280  
  2011-02-28 00:00:00   390  
  2011-01-31 00:00:00   601  
  2010-12-31 00:00:00   423  
  2010-11-30 00:00:00   748  
  2010-10-31 00:00:00   433  
  2010-09-30 00:00:00   734  
  2010-08-31 00:00:00   845  
  2010-07-31 00:00:00  1693  
  2010-06-30 00:00:00  2742  
  2010-05-31 00:00:00   669  
  </code></pre>
  
  <p>This is all non contiguous. I want to have a daily value so, want to fill in the missing values using some kind of interpolation.</p>
  
  <p>First tried to set the index and then interpolate.</p>
  
  <pre><code>new_index = pd.date_range(date(2010,1,1),date(2014,1,31),freq='D')
  df2 = res.reindex(new_index) # This returns NaN
  df2.interpolate('cubic') # Fails with error TypeError: Cannot interpolate with all NaNs.
  </code></pre>
  
  <p>What I would hope to get back is a dataframe with each date value between 2010-2014, with a interpolated value calculated from the points surrounding it.</p>
  
  <p>It seems like there probably is a way to do this simply, but I'm not sure what.</p>