This is similar to what pandas handles nans. When I set skipna=Falsein a method sum, I get a numpydatatype type
import pandas as pd
import numpy as np
type(pd.DataFrame({'col1':[.1,.2,.3,.4]}).col1.sum(skipna=True))
type(pd.DataFrame({'col1':[.1,.2,.3,.4]}).col1.sum(skipna=False))
sum nansum pandas/core/nanops.py, .
from pandas.core.nanops import nansum
type(sum(np.arange(10.0)))
# numpy.float64
type(nansum(np.arange(10.0)))
# float
nansum numpy.float64 float, . nansum, , , , .