Pandas'ta apply ve map yöntemleri arasındaki fark nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Pandas'taki apply ve map metodları, verilere fonksiyon uygulamak için kullanılır, ancak farklı bağlamlarda kullanılırlar ve farklı yeteneklere sahiptirler.
-
mapgenellikle Series'e uygulanır ve öğe bazlı dönüşümler için tasarlanmıştır. Bir sözlük, fonksiyon veya Series kabul edebilir ve değerleri değiştirmek veya dönüştürmek için kullanılır. -
applydaha esnektir ve hem Series hem de DataFrame üzerinde kullanılabilir. Series için,map'e benzer şekilde çalışır, ancak skalar veya Series döndüren fonksiyonlar kabul edebilir. DataFrame için, satırlar (axis=1) veya sütunlar (axis=0) boyunca fonksiyon uygulamaya izin verir.
Örnek:
import pandas as pd
ds = pd.Series([1, 2, 3])
# map, her öğeye fonksiyon uygular
print(ds.map(lambda x: x * 2))
# apply, Series üzerinde map'e benzer
print(ds.apply(lambda x: x * 2))
# DataFrame üzerinde sütunlar için apply
df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
print(df.apply(sum, axis=0)) # sütunlar toplamı
print(df.apply(sum, axis=1)) # satırlar toplamı
Özetle: map — basit dönüşümler için Series, apply — daha esnek, hem DataFrame hem de Series ile çalışır ve karmaşık fonksiyonlar uygulamaya olanak tanır.