데이터분석/Pandas&Numpy

pandas apply와 lambda 만남으로 데이터 가공

ADELA_J 2023. 7. 7. 23:54

< apply와 lambda의 만남..... 세상에 > 

 

- 세상에 만상에 최근에 apply를 공부했고, lambda는 원래 알던 아이였지만 둘이 친한줄 몰랐다 배신감

- apply 함수에 lambda식을 결합해 데이터를 가공할 수 있는 기능을 제공한다. (판다스가)

 

▶ DataFrame의 lambda 식은 이렇게 식을 그대로 적용한 후 apply에 적용해 가공해볼 수 있다.

▶ lambda if문을 써서 사용할 수도 있다.

   ▷그래서 15세 이하면 Child, 그 외에는 Adult로 구별하는 열을 추가해봤다.

▷ 여기서 한번 짚고 넘어가는 lambd 식

   ● lambda x(입력인자) : x **2 (입력인자를 기반으로 한 계산식, 호출 시 계산 결과 반환됨)

   ● lambda x : 'Child' if x<=15 ( : if 가 True이면 그 앞에 있는 child가 나가고) else 'Adult' (else는 식이 먼저 나오고 반환 값이 나중에 옴)

    ◎ 참고로 else if는 지원하지 않음..^.^

▶ else if 못쓰는 대신 else절을 ( )로 내포해 ( )내에서 다시 if else 적용해 사용. 

   ▲  그래서 15세 이하는 Child, 15~60 Adult, 61세 이상은 Elderly 로 분류

▷ 만약,,,,,, 다양하고 세분화되어 있는 조건들이라면 계속 해서 괄호로 내포해서 사용하기가 힘들.  이럴때는 별도의 함수를 만들어서 쓰는게 더 나음.