04 Apply, Map 실습
❇️ 요약
- 복잡한 조건 : Apply
- 간단한 조건 : map
| 배운 것 | 설명 |
|---|---|
| map() | 여러 개의 데이터를 받아서 각각의 요소에 함수를 적용한 결과를 반환하는 내장 함수 / 딕셔너리 적용할 때 주로 사용 |
| lambda | 함수를 생성할 때 사용하는 예약어 / 사용자 정의 함수 |
| dictionary | Key와 Value를 한 쌍으로 가지는 자료형 / {Key1: Value1, Key2: Value2, Key3: Value3, ...} |
| apply() | DataFrame에 함수를 적용하여 반환하는 메서드 |
| def 함수이름(매개변수): | 함수를 만들 때 사용하는 예약어 |
| value_counts() | 컬럼이 가지고 있는 유일 값 추출, 갯수 많은 순서대로 내림차순 |
| if문 조건부 표현식 | 변수 = 조건문이참인경우의값 if 조건문 else 조건문이거짓인경우의값 |
| np.where(조건, a, b) | 조건이 맞으면 a, 틀리면 b |
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 매개변수1, 매개변수2, ... : 매개변수를_이용한_표현식
lambda로 만든 함수는 return 명령어가 없어도 표현식의 결괏값을 리턴
add = lambda a, b: a+b
result = add(3, 4)
print(result)
7
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인 경우 기존 열 형식대로 확장하여 반환(열의 수가 같아야함)