Python : 04. Apply, Map

yeppi1802·2024년 6월 22일

04 Apply, Map 실습

❇️ 요약

  • 복잡한 조건 : Apply
  • 간단한 조건 : map

배운 것설명
map()여러 개의 데이터를 받아서 각각의 요소에 함수를 적용한 결과를 반환하는 내장 함수 / 딕셔너리 적용할 때 주로 사용
lambda함수를 생성할 때 사용하는 예약어 / 사용자 정의 함수
dictionaryKey와 Value를 한 쌍으로 가지는 자료형 / {Key1: Value1, Key2: Value2, Key3: Value3, ...}
apply()DataFrame에 함수를 적용하여 반환하는 메서드
def 함수이름(매개변수):함수를 만들 때 사용하는 예약어
value_counts()컬럼이 가지고 있는 유일 값 추출, 갯수 많은 순서대로 내림차순
if문 조건부 표현식변수 = 조건문이참인경우의값 if 조건문 else 조건문이거짓인경우의
np.where(조건, a, b)조건이 맞으면 a, 틀리면 b

📖 자세히

[함수 참고 - [Python 완전정복 시리즈] 2편 : Pandas DataFrame 완전정복]

🔆 map()

  • 기본형태
map(function, iterable)

function : 각 요소에 적용할 함수

iterable : 함수를 적용할 데이터 집합

def two_times(x): 
     return x*2

list(map(two_times, [1, 2, 3, 4]))
[2, 4, 6, 8]

# lambda로 간단하게 만들기
list(map(lambda a: a*2, [1, 2, 3, 4]))
[2, 4, 6, 8]

🔆 lambda 예약어

  • 기본형태
함수_이름 = lambda 매개변수1, 매개변수2, ... : 매개변수를_이용한_표현식

lambda로 만든 함수는 return 명령어가 없어도 표현식의 결괏값을 리턴

add = lambda a, b: a+b
result = add(3, 4)
print(result)
7

🔆 apply()

  • 기본형태
df.apply(func, axis=0, raw=False, result_type=None, args=(), kwargs)

function : 각 행이나 열에 적용할 함수

axis : {0 : Index / 1 : columns} 함수를 적용할 축

row : {True : ndarray / False : Series} 함수에 전달할 축의 형식

True면 ndarray형태로 전달하고 False면 Series형태로 전달 / 기본적으로 Series

result_type : {expand / reduce / broadcast} 반환값의 형태를 결정

expand이면 배열 형태를 기준으로 열을 확장 / (기본 인덱스로), reduce인 경우는 그대로 Serise형태로 반환 / broadcase인 경우 기존 열 형식대로 확장하여 반환(열의 수가 같아야함)

0개의 댓글