Middle
18
Чем отличаются методы apply и map в Pandas?
Companies where asked
Answer from AI
sobes.tech AI
Методы apply и map в Pandas служат для применения функций к данным, но используются в разных контекстах и имеют разные возможности.
-
mapобычно применяется к Series и предназначен для элемент-wise преобразований. Он может принимать словарь, функцию или Series для замены или преобразования значений. -
applyболее универсален и может применяться как к Series, так и к DataFrame. Для Series он работает похоже наmap, но может принимать функции, которые возвращают скаляр или серию. Для DataFrameapplyпозволяет применять функцию по строкам (axis=1) или по столбцам (axis=0).
Пример:
import pandas as pd
ds = pd.Series([1, 2, 3])
# map применяет функцию к каждому элементу
print(ds.map(lambda x: x * 2))
# apply на Series похож на map
print(ds.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, и с Series, позволяет применять сложные функции.