Spec-Zone.ru › pandas 2

pandas.Series.map

Series.map(arg, na_action=None)[source]

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

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

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

Сопоставление значений.

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

Если ‘ignore’, пропускает значения NaN, не передавая их в отображение.

Возвращаемое значение:
Series

С тем же индексом, что и исходный объект.

См. также

Series.apply

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

Series.replace

Заменяет значения, заданные в to_replace, на value.

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, преобразуются в 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

© 2008–2022, 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/2.2.2/reference/api/pandas.Series.map.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API