pandas.Series.map#

Series.map(arg, na_action=None)[источник]#

Сопоставление значений Series в соответствии с входным отображением или функцией.

Используется для замены каждого значения в Series другим значением, которое может быть получено из функции, a dict или Series.

Параметры:
argфункция, подкласс collections.abc.Mapping или Series

Соответствие отображения.

na_action{None, ‘ignore’}, по умолчанию None

Если 'ignore', распространять значения NaN, не передавая их в соответствие отображения.

Возвращает:
Series

Тот же индекс, что и у вызывающего объекта.

Смотрите также

Series.apply

Для применения более сложных функций к Series.

Series.replace

Заменить значения, указанные в to_replace с значение.

DataFrame.apply

Применить функцию построчно/постолбцово.

DataFrame.map

Применение функции поэлементно ко всему DataFrame.

Примечания

Когда arg является словарём, значения в Series, которых нет в словаре (как ключи), преобразуются в NaN. Однако, если словарь является dict подкласс, который определяет __missing__ (т.е. предоставляет метод для значений по умолчанию), тогда это значение по умолчанию используется вместо NaN.

Примеры

>>> s = pd.Series(['cat', 'dog', np.nan, 'rabbit'])
>>> s
0      cat
1      dog
2      NaN
3   rabbit
dtype: object

map принимает dict или Series. Значения, которые не найдены в dict преобразуются в NaN, если только словарь не имеет значения по умолчанию (например, defaultdict):

>>> s.map({'cat': 'kitten', 'dog': 'puppy'})
0   kitten
1    puppy
2      NaN
3      NaN
dtype: object

Также принимает функцию:

>>> 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

Чтобы избежать применения функции к пропущенным значениям (и оставить их как NaN) na_action='ignore' может использоваться:

>>> 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