호기심 많은 분석가
[Pandas] Series에는 merge를 어떻게 해줄까? 본문
우리는 보통 DataFrame을 merge할 때 pandas의 merge를 쓰곤한다. 하지만 Series에는 merge가 적용되지 않는 다!
그래서 pd.concat을 이용하곤 하는데, Series의 내장 함수인 combine을 사용해보자.
위와 같은 10-16시까지의 값들만 존재하는 Series가 있다. 이 데이터를 24시간으로 시각화 시키기 위해 나머지 HOUR에는 0을 넣으려고 한다. 이때 어떻게 해줄 수 있을까? 우선 0-24시까지 0뿐인 Series를 생성해준다.
zero_series = pd.Series(index=range(24), data=[0]*24)
zero_series
이제 우리는 두 Series를 combine을 통해 합쳐줄 거다. Series1.combine(Series2, max) 식으로 합쳐주면 되는데(min이어도 된다, 원하는 함수를 입력), Series1에 값이 없는 바람에, max비교가 이루어지지 않아 NaN값이 발생했다.
이때, fill_value=0를 적어주면 pandas의 fillna=0과 같은 변환이 이루어진다.
제가 이번에 다룬 combine 메서드가 도움이 되시길 바라겠습니다. :)
'Coding > Machine Learning & Python' 카테고리의 다른 글
[Python] Python에서 구글 스프레드시트 연동하기 (0) | 2024.05.21 |
---|---|
[DACON] LH 구내식당 식수 인원 예측 대회 (2) | 2021.07.26 |
[Python] Intersection에 대해 알아보자(set, index) (0) | 2021.06.25 |
[ML] 다중 회귀 VS 다항 회귀 (Multiple VS Polynomial regression) (0) | 2021.06.07 |
[Pandas] Pandas의 map, apply, applymap 함수 (3) | 2021.06.06 |