BUG: SparseSeries.shift may raise NameError or TypeError by sinhrks · Pull Request #12908 · pandas-dev/pandas (original) (raw)
Fixed following bugs on current master. Also, moved TestSparseArrayIndex
to test_libsparse
pd.SparseSeries([1, 2, 3], fill_value=0).shift(1)
# NameError: global name 'kwds' is not defined
pd.SparseSeries([1, 2, 3]).shift(1)
# TypeError: %d format: a number is required, not float
from pandas.sparse.array import IntIndex
arr = pd.SparseArray([1, 2], sparse_index=IntIndex(4, [1, 2]), dtype=None)
arr.dtype
# dtype('int64')
arr.values
# array([-9223372036854775808, 1, 2,
# -9223372036854775808])
# Expected outputs
arr.dtype
# dtype('float64')
arr.values
# array([ nan, 1., 2., nan])