title: Why does sum() operation on numpy masked_array change fill value to 1e20?
body: <p>Is this a feature or a bug? Can someone explain to me this behavior of a numpy masked_array? It seems to change the fill_value after applying the sum operation, which is confusing if you intend to use the filled result.</p>
  
  <pre><code>data=ones((5,5))
  m=zeros((5,5),dtype=bool)
  
  """Mask out row 3"""
  m[3,:]=True
  arr=ma.masked_array(data,mask=m,fill_value=nan)
  
  print arr
  print 'Fill value:', arr.fill_value
  print arr.filled()
  
  
  farr=arr.sum(axis=1)
  print farr
  print 'Fill value:', farr.fill_value
  print farr.filled()
  
  """I was expecting this"""
  print nansum(arr.filled(),axis=1)
  </code></pre>
  
  <p>Prints output:</p>
  
  <pre><code>[[1.0 1.0 1.0 1.0 1.0]
   [1.0 1.0 1.0 1.0 1.0]
   [1.0 1.0 1.0 1.0 1.0]
   [-- -- -- -- --]
   [1.0 1.0 1.0 1.0 1.0]]
  Fill value: nan
  [[  1.   1.   1.   1.   1.]
   [  1.   1.   1.   1.   1.]
   [  1.   1.   1.   1.   1.]
   [ nan  nan  nan  nan  nan]
   [  1.   1.   1.   1.   1.]]
  [5.0 5.0 5.0 -- 5.0]
  Fill value: 1e+20
  [  5.00000000e+00   5.00000000e+00   5.00000000e+00   1.00000000e+20
     5.00000000e+00]
  [  5.   5.   5.  nan   5.]
  </code></pre>