Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags more
Archives
Today
Total
관리 메뉴

StudyStudyStudyEveryday

Python | map, lambda 이용하여 파생변수 만들기 본문

Python

Python | map, lambda 이용하여 파생변수 만들기

따듯한붕어빵 2023. 1. 18. 23:12

 

 

데이터프레임에서 기존에 있는 변수를 기반으로 파생변수를 만들고 싶은데 if문이나 for문을 이용해 복잡하게 구하기 싫을 때가 있다.

그럴 때 map과 lambda를 이용하면 아주 쉽게 해결이 가능하다.

 

import pandas as pd

df = pd.DataFrame([[1, 'a'], [2, 'b'], [3, 'c']], columns=['number', 'alphabet'])
df

 

이런 간단한 데이터프레임이 있다고 해보자.

여기서 'alphabet' 변수에 기반하여 새로운 파생변수를 만들어보겠다.

dict = {'a': '사과', 'b':'바나나', 'c':'전화'}

df['word'] = list(map(lambda x: dict[x], df.alphabet))
df

 

각 a, b, c에 mapping되는 단어들을 나열한 새로운 변수가 생성되었다.

 

다들 알겠지만 lambda는 def로 긴 함수문을 만들지 않고도 비슷한 효과를 낼 수 있는 함수다.

map으로 뒤에서 input시킨 df의 alphabet의 값들을 하나씩 x로 대입하면 각 x에 dict의 key로 입력되고, 대응되는 value 값이 나온다.

이 과정을 df.alphabet의 row 길이 만큼 반복하고, 결과로 나온 값을 list화 시켰다.

 

정말 간단한건데 막상 내가 찾을 때 없길래 기록해둔다.

한 번 외워두면 아주 요긴하다.

 

 

 

 

Comments