Sobes.tech
Middle
25

В чем разница между методами map и apply в pandas?

Компании, где спрашивали
1221 Systems

Ответ от нейросети

sobes.tech AI

В pandas методы map и apply используются для применения функций к данным, но отличаются по области применения и гибкости.

  • map обычно применяется к Series и предназначен для замены значений или преобразования элементов поэлементно. Он принимает словарь, Series или функцию и возвращает Series с преобразованными значениями.

  • apply более универсален и может применяться как к Series, так и к DataFrame. Для Series он похож на map, но может работать с функциями, которые возвращают скаляр или серию. Для DataFrame apply позволяет применять функцию по строкам (axis=1) или по столбцам (axis=0).

Пример:

import pandas as pd

s = pd.Series([1, 2, 3])

# map с функцией
print(s.map(lambda x: x * 2))

# apply с функцией
print(s.apply(lambda x: x * 2))

# apply к DataFrame по столбцам
df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
print(df.apply(sum, axis=0))  # сумма по столбцам
print(df.apply(sum, axis=1))  # сумма по строкам

Таким образом, map удобен для простых поэлементных преобразований Series, а apply — для более сложных операций и работы с DataFrame.