Series.map(self, arg, na_action=None)
[source]
Map values of Series according to input correspondence.
Used for substituting each value in a Series with another value, that may be derived from a function, a dict
or a Series
.
Parameters: |
|
---|---|
Returns: |
|
See also
Series.apply
DataFrame.apply
DataFrame.applymap
When arg
is a dictionary, values in Series that are not in the dictionary (as keys) are converted to NaN
. However, if the dictionary is a dict
subclass that defines __missing__
(i.e. provides a method for default values), then this default is used rather than NaN
.
>>> s = pd.Series(['cat', 'dog', np.nan, 'rabbit']) >>> s 0 cat 1 dog 2 NaN 3 rabbit dtype: object
map
accepts a dict
or a Series
. Values that are not found in the dict
are converted to NaN
, unless the dict has a default value (e.g. defaultdict
):
>>> s.map({'cat': 'kitten', 'dog': 'puppy'}) 0 kitten 1 puppy 2 NaN 3 NaN dtype: object
It also accepts a function:
>>> s.map('I am a {}'.format) 0 I am a cat 1 I am a dog 2 I am a nan 3 I am a rabbit dtype: object
To avoid applying the function to missing values (and keep them as NaN
) na_action='ignore'
can be used:
>>> s.map('I am a {}'.format, na_action='ignore') 0 I am a cat 1 I am a dog 2 NaN 3 I am a rabbit dtype: object
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.Series.map.html