SMALL
안녕하세요 😊
데이터 전처리에서 자주 쓰이는 명령어를 정리해봤습니다!
(딱히 기준이 있는건 아니고 생각나는데로 정리한 것이니 참고용으로 부탁드릴게요!)
1. Apply lambda 함수
행이나 열 단위로 더 복잡한 처리를 할 때 apply() 메소드를 활용한다.
인수로 행 또는 열을 받는 함수를 apply 메소드의 인수로 넣으면 각 열(또는 행)을 반복하며 그 함수를 적용시킨다.
쉽게 말씀 드려서 각 데이터를 행이나, 열을 기준으로 계산해주고 싶거나 형식을 바꿔주고 싶을 때 적용한다고 생각하면 되겠습니다.
import pandas as pd
df = pd.DataFrame({'캠페인시작날짜':['2020.07.08','2020.07.09','2020.07.10']})
캠페인시작날짜
0 2020.07.08
1 2020.07.09
2 2020.07.10
#캠페인시작날짜의 각 데이터를 바꿔주겠다.
df['캠페인시작날짜'] =df['캠페인시작날짜'].apply(lambda x: x.replace('.','-'))
캠페인시작날짜
0 2020-07-08
1 2020-07-09
2 2020-07-10
2. 특정 조건의 데이터만 변경 ( loc의 활용)
예를 들어 캠페인 명과 캠페인 날짜가 있는 데이터 프레임에서 특정 캠페인 명의 캠페인 날짜만 현재 날짜로 변경하고자 할 때 어떻게 하면 좋을까요??
df = pd.DataFrame({'캠페인명':['aaa캠페인','bbb캠페인','ccc캠페인'],'캠페인날짜':['2020-02-01','2021-03-08','2021-11-04']})
df
캠페인명 캠페인날짜
0 aaa캠페인 2020-02-01
1 bbb캠페인 2021-03-08
2 ccc캠페인 2021-11-04
다음과 같은 df가 있다고 합시다.
근데 ccc캠페인 날짜를 보니 21년 11월로 돼 있네요!
포스팅하는 현재는 5월달인데 말이죠 !
그래서 저는 ccc캠페인의 날짜를 5월 30일로 바꾸고자 합니다 😉
df.loc[(df.캠페인명=='ccc캠페인'),'캠페인날짜']='2021-05-30'
df
캠페인명 캠페인날짜
0 aaa캠페인 2020-02-01
1 bbb캠페인 2021-03-08
2 ccc캠페인 2021-05-30
위와 같이 loc를 활용하면 간다하게 바꿀 수 있어요!
이를 for문과 if문 등을 활용해서 적용하면 더욱 다양하게 활용할 수 있겠죠? :)
3. Cut 함수
실수 값의 경계선을 지정했을 때 해당 경계선을 기준으로 카테고리를 설정할 수 있다.
예를 들어 나이가 적힌 리스트가 있을 때 미성년자, 청년, 중년, 노년 이렇게 나눠 볼 수 있습니다 : )
ages=[0,2,10,21,23,37,31,61,20,41,32,100]
# 카테고리를 나누는 기준 설정
bins=[1,15,25,35,60,99]
# 카테고리 설정
labels=['미성년자','청년','중년','장년','노년']
# ages 리스트를 bins 기준에 맞게 labels 할게!
cats=pd.cut(ages,bins,labels=labels)
cats
[NaN, 미성년자, 미성년자, 청년, 청년, ..., 노년, 청년, 장년, 중년, NaN]
위와 같이 활용할 수 있답니다 :)
다음 포스팅도 활용하기 쉬운 예시와 함께 찾아뵙겠습니다!
감사합니다😁
'데이터' 카테고리의 다른 글
네이버 키워드 검색어 일일 검색량 파악하기 (10) | 2021.06.09 |
---|---|
데이터 청년 캠퍼스 소개 및 후기 (4) | 2021.06.06 |
UTM과 GTM의 차이를 알려줄게 (1) | 2021.05.31 |
파이썬 자주 쓰이지만 헷갈리는 코드 (2) | 2021.05.22 |
구글 애널리틱스를 공부합시다 (0) | 2021.05.19 |