title: numpy.diff() use with pandas DataFrame error
body: <p>I have a pandas DataFrame, with float64's in the 'mass' column. I use <code>np.diff()</code> to find the first difference of this data.</p>
  
  <p>The problem: the size changes if I use data.mass versus, data.mass.values
  Note, this 'bug' is also seen in the fact that the min, max, and mean are not the same...</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  
  data = pd.DataFrame({'time': np.arange(1,101), 'mass': randn(100)})
  dm = np.diff(data.mass, n=1)
  dmv = np.diff(data.mass.values, n=1)
  
  print 'data.mass: \t\t', dm.shape
  print 'min: ', dm.min(), ' max: ', dm.max(), ' mean: ', dm.mean()
  
  print ''
  print 'now using data.mass.values in the calculations \n'
  print 'data.mass.values: \t', dmv.shape
  print 'min: ', dmv.min(), ' max: ', dmv.max(), ' mean: ', dmv.mean()
  </code></pre>
  
  <p>The output of which is:</p>
  
  <pre><code>data.mass:      (100,)
  min:  0.0  max:  0.0  mean:  0.0
  
  now using data.mass.values in the calculations 
  
  data.mass.values:   (99,)
  min:  -3.49992599537  max:  2.52901842461  mean:  -0.00718375066572
  </code></pre>
  
  <p>is this the expected functionality? why would I need to use <code>.value</code>, as I understood pandas DataFrames to be numpy arrays under the hood anyways.</p>