title: Why does pandas.Series.corr return Nan whereas numpy or scipy compute a number?
body: <p>I try to compute correlation between two pandas series. This is what I get from numpy or scipy :</p>
  
  <pre><code>scipy.stats.pearsonr(xfarines["400"].values, yfarines["PROTREF"].values)
  
  
  (0.71564870605278108, 2.9185934338775347e-23)
  
  
  pd.np.corrcoef(xfarines["400"].values, yfarines["PROTREF"].values)
  
  
  array([[ 1.        ,  0.71564871],
     [ 0.71564871,  1.        ]])
  </code></pre>
  
  <p>But this is what pandas gives me :</p>
  
  <pre><code>s = xfarines["400"]
  s.corr(yfarines["PROTREF"])
  
  
  nan
  </code></pre>
  
  <p>Looking at this question, 
  <a href="https://stackoverflow.com/questions/29042603/pandas-df-corr-returns-nan-despite-data-fed-having-populated-data">pandas df.corr() returns NaN despite data fed having populated data</a>
  I check if the dtypes are ok and it seems it is :</p>
  
  <pre><code>s.describe()
  
  count    140.000000
  mean       0.304078
  std        0.057225
  min        0.197300
  25%        0.250300
  50%        0.318500
  75%        0.346850
  max        0.408600
  Name: 400, dtype: float64
  
  
  yfarines["PROTREF"].describe()
  
  count    140.000000
  mean      12.619143
  std        2.547644
  min        7.600000
  25%       10.975000
  50%       12.100000
  75%       14.590000
  max       18.200000
  Name: PROTREF, dtype: float64
  </code></pre>
  
  <p>Thus I do not understand where the problem comes from ?</p>