인공지능 스터디 #5
appy lamda 식으로 데이터 가공
판다스의 경우 칼럼에 일괄적으로 데이터를 가공하는 것이 속도 면에서 더 빠르거나 데이터 가공이 필요할 경우 사용
함수형 프로그래밍을 지원하기 위해 만듦
다음과 같은 함수가 있다 가정해보자
이를 람다식으로 변환해보면
lambda x : x **2 에서 :로 입력 인자와 반환될 입력 인자의 계산식을 분리
:의 왼쪽에 있는 x는 입력 인자, 오른쪽은 입력 인자의 계산식
lambda 식을 이용할 때 여러 개의 값을 입력 인자로 사용해야 될 경우에는 보통 map() 함수 결합
DataFrame에 lambda식을 적용해 데이터를 가공해보자
ex 1)
ex 2)
if else 절을 사용해 조금 더 복잡한 가공을 해보자(15세 미만이면 child, 그렇지 않으면 adult)
주의
if 절의 경우 if 식보다 반환 값을 먼저기술해야 됨
if, else만 지원하고 if, else if, else와 같이 else if는 지원하지 X
else if를 이용하기 위핸 else절을 ()로 내포해 () 내에서 다시 if else 적용 후 사용
(나이가 15세 이하면 Child, 15~60세는 Adult, 61세 이상은 Elderly로 분류하는 Age_Cat 칼럼 만들어보자)
else if가 많이 나와야 되는 경우나 switch case문과 같은 경우는 별도의 함수를 만드는 게 더 편함
5세 이하는 Baby, 12세 이하는 Child, 18세 이하는 Teenage, 25세 이하는 Student. 35세 이하는 Young Adult, 60세 이하는 Adult, 그리고 그 이상은 Elderly로 분류해보자