뒤죽박죽 데이터분석 일기장
[Python] 네이버 데이터랩 API 사용기 및 월별 평균량 구하기 (2/2) 본문
안녕하세요. 저번 포스트에서 구한 일별 검색량을 기준으로 월별 평균 검색량을 구해 보도록 하겠습니다.
저번 포스트에서 수집된 데이터 프레임은 아래와 같습니다.
하지만, 검색량이 없는 날짜는 날짜가 저장되지 않습니다.
df['period']
따라서 해당 기간 전체 날짜를 가진 Dataframe을 만든 후 merge를 시키는 방법으로 접근해 보겠습니다.
# 날짜만 있는 데이터 프레임을 생성합니다
df_date = pd.DataFrame(dates)
# column 값을 period로 설정
df_date.columns = ['period']
# 기존에 있던 데이터프레임을 column 'period'를 기준으로 left merge 합니다.
df = df_date.merge(df,how='left', on='period')
# 결측치에는 0을 채웁니다.
df = df.fillna(0)
df
위 코드를 입력하면 아래와 같이 결과값이 나옵니다.
이제 'period' 컬럼 안에서 월 정보를 추출해 월별 평균을 구해보겠습니다.
# '-'를 기준으로 문자열을 split 하고 나눈 데이터를 3개의 column으로 저장합니다.
df_final = pd.concat([df['period'].str.split('-', expand=True), df], axis=1)
# 컬럼명을 재지정합니다.
df_final.columns = ['year', 'month', 'day', 'period', 'ratio']
df_final.head()
사실 year와 day column은 필요가 없습니다. 따라서, month 컬럼을 기준으로 groupby 함수를 사용해 월별 검색량 평균을 구하겠습니다.
df_final.groupby('month')['ratio'].mean()
이렇게 월별 평균을 구할 수 있었습니다. 간단하게 시각화도 진행해 보겠습니다.
df_final.groupby('month')['ratio'].mean().plot.barh(90)
결론적으로 '수려한 효비담 발효 크림' 이라는 키워드는 2월에 평균적으로 검색량이 높았던 것을 확인할 수 있었습니다.
'Python' 카테고리의 다른 글
[Python] 네이버 데이터랩 API 사용기 및 월별 평균량 구하기 (1/2) (0) | 2023.07.18 |
---|---|
[Python] [5일차] 모듈과 패키지 (0) | 2023.01.07 |
[Python] [5일차] 입출력, 파일 저장 및 출력 (0) | 2023.01.07 |
[Python] [5일차] Class 파트 2 (2) | 2023.01.06 |
[Python] [4일차] Class 파트 1 (0) | 2023.01.05 |