> 백엔드 개발 > 파이썬 튜토리얼 > Pandas 벡터화에서 `map`, `applymap` 및 `apply`는 어떻게 다릅니까?

Pandas 벡터화에서 `map`, `applymap` 및 `apply`는 어떻게 다릅니까?

Patricia Arquette
풀어 주다: 2024-12-07 03:09:10
원래의
718명이 탐색했습니다.

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

Pandas의 벡터화 방법: map, applymap 및 apply

Pandas는 데이터 구조에 함수를 적용하는 편리한 방법을 제공합니다. map, applymap 및 apply는 데이터 조작 및 변환을 용이하게 하는 세 가지 메서드입니다. 각 메소드는 특정 목적을 수행하며 원하는 결과에 따라 사용법이 달라집니다.

map

map은 시리즈에 함수 요소별로 적용할 때 사용됩니다. 변환된 값이 포함된 새 시리즈를 반환합니다.

예:

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
로그인 후 복사

applymap

applymap은 함수를 적용합니다. 요소별로 DataFrame으로. 변환된 값으로 새 DataFrame을 생성합니다.

예:

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
로그인 후 복사

apply

apply는 더 많은 것을 허용합니다. DataFrame에 행 또는 열 단위로 함수를 적용하여 복잡한 변환을 수행합니다. 결과와 함께 시리즈 또는 DataFrame을 반환합니다.

예:

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
로그인 후 복사

위 내용은 Pandas 벡터화에서 `map`, `applymap` 및 `apply`는 어떻게 다릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿