Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah `peta`, `applymap` dan `apply` Berbeza dalam Vektorisasi Panda?

Bagaimanakah `peta`, `applymap` dan `apply` Berbeza dalam Vektorisasi Panda?

Patricia Arquette
Lepaskan: 2024-12-07 03:09:10
asal
717 orang telah melayarinya

How Do `map`, `applymap`, and `apply` Differ in Pandas Vectorization?

Kaedah Vektorisasi dalam Panda: peta, terapkan peta dan guna

Panda menawarkan kaedah yang mudah untuk menggunakan fungsi pada struktur data. peta, applymap dan apply ialah tiga kaedah sedemikian yang memudahkan manipulasi dan transformasi data. Setiap kaedah mempunyai tujuan tertentu, dan penggunaannya bergantung pada hasil yang diingini.

peta

peta digunakan apabila menggunakan elemen fungsi pada Siri. Ia mengembalikan Siri baharu dengan nilai yang diubah.

Contoh:

import pandas as pd

series = pd.Series([1, 2, 3, 4, 5])

def square(x):
    return x ** 2

squared_series = series.map(square)

print(squared_series)
# Output:
# 0    1
# 1    4
# 2    9
# 3   16
# 4   25
# dtype: int64
Salin selepas log masuk

applymap

applymap menggunakan fungsi unsur-bijak kepada DataFrame. Ia mencipta DataFrame baharu dengan nilai yang diubah.

Contoh:

df = pd.DataFrame({
    'name': ['John', 'Jane', 'Tom'],
    'age': [20, 25, 30]
})

def capitalize(x):
    return x.capitalize()

df['name'] = df['name'].applymap(capitalize)

print(df)
# Output:
#    name  age
# 0  John   20
# 1  Jane   25
# 2  Tom    30
Salin selepas log masuk

mohon

mohon membolehkan lebih banyak transformasi yang kompleks dengan menggunakan baris atau lajur fungsi pada DataFrame. Ia mengembalikan Siri atau DataFrame dengan hasilnya.

Contoh:

def get_age_group(age):
    if age <= 20:
        return 'Young'
    elif age <= 40:
        return 'Middle-aged'
    else:
        return 'Senior'

df['age_group'] = df['age'].apply(get_age_group)

print(df)
# Output:
#   name  age age_group
# 0  John   20     Young
# 1  Jane   25  Middle-aged
# 2  Tom    30  Middle-aged
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah `peta`, `applymap` dan `apply` Berbeza dalam Vektorisasi Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan