반응형
데이터 불러오기
who 컬럼의 고유값
[목표 : man, woman은 adult로 변경 / child는 그대로 유지]
try1 : 딕셔너리와 map 이용
하나의 컬럼은 시리즈이며 이는 순차적 자료형이기 때문에
map 메서드를 이용할 수 있으며
map 메서드에 딕셔너리를 이용해 기존값을(key) 대체값(value)으로 바꿔줄 수 있다.
단, key에 해당하는 값이 없다면 NaN을 반환한다.
try1 실패
try2 : 딕셔너리.get, map 이용
get(x) 함수는 x라는 Key에 대응되는 Value를 돌려준다.
딕셔너리 안에 찾으려는 Key 값이 없을 경우
미리 정해 둔 디폴트 값을 대신 가져오게 하고 싶을 때에는
get(x, '디폴트 값')을 사용하면 편리하다.
(출처 : 점프투파이썬)
try1과는 방법이 비슷하나
lambda 함수와 딕셔너리의 get을 이용했다.
man 또는 woman처럼 정해진 key가 입력되면 정해진 value인 adult가 나오지만
사전에 없는 key인 child가 들어가면 그냥 디폴트 값인 원본값이 반환된다.
이렇게 원하는대로 adult와 child가 나왔다.
try2 성공
** 참고
위 작업은 함수 정의와 apply로도 가능하다.
반응형
'Pandas > 응용' 카테고리의 다른 글
판다스 - groupby : 그룹 객체별, 기준 컬럼의 상위 N개의 행만 추출 (0) | 2020.08.09 |
---|---|
판다스 - 값이 높은 n번째까지 출력 : nlargest (0) | 2020.08.09 |
판다스 - map (0) | 2020.08.09 |
정규표현식 - 원하는 문자열이 있는 행만 남기기 : re.compile, re.search (0) | 2020.08.08 |
정규표현식 - re.sub : 원하는 문자만 남기고 제거하기 (0) | 2020.08.02 |