diff --git a/pandas/tests/series/test_apply.py b/pandas/tests/series/test_apply.py index 0780c846a6c19..b28b9f342695f 100644 --- a/pandas/tests/series/test_apply.py +++ b/pandas/tests/series/test_apply.py @@ -576,3 +576,14 @@ def f(x): result = s.map(f) exp = pd.Series(['Asia/Tokyo'] * 25, name='XX') tm.assert_series_equal(result, exp) + + @pytest.mark.parametrize("vals,mapping,exp", [ + (list('abc'), {np.nan: 'not NaN'}, [np.nan] * 3 + ['not NaN']), + (list('abc'), {'a': 'a letter'}, ['a letter'] + [np.nan] * 3), + (list(range(3)), {0: 42}, [42] + [np.nan] * 3)]) + def test_map_missing_mixed(self, vals, mapping, exp): + # GH20495 + s = pd.Series(vals + [np.nan]) + result = s.map(mapping) + + tm.assert_series_equal(result, pd.Series(exp))