728x90
https://www.kaggle.com/datasets/aggle6666/bbc-news
캐글에서 제공하는 데이터는
다음과 같은 구조를 가진다.
STM 모델에 적용하기 위해 파이썬 환경에서 데이터셋을 약간 전처리할 계획이다.
연구실 선배님이 논문을 읽었는데 STM topic의 성능을 향상시키기 위해 headline을 두 번 concat하여 가중치를 두는 경우도 있다고 하여 document를 만들 때 참고하기로 했다. 또한 metadata로서 date를 활용하기 위해 현재 날짜의 데이터 타입을 바꿀 필요가 있어
Saturday 08 April 2017 |
을 April로 바꾸었다.
사용하지 않을 것 같은 데이터는 삭제하였고 전체적인 전처리를 요약하면 다음 코드와 같다.
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
df=pd.read_csv('BBC_08_APR_17_to_08_JUN_2017.csv', encoding='utf-8')
df.isnull().sum()
# 혹시 원본 데이터에 결측치가 있는지 확인하고자 함
for i in df.index:
if 'April' in df.loc[i, 'date']:
df['date'][i]='April'
elif 'May' in df.loc[i, 'date']:
df['date'][i]='May'
elif 'June' in df.loc[i, 'date']:
df['date'][i]='June'
df.drop(labels=['panda_date', 'url'], axis=1, inplace=True)
df['document']=df['headline']+' '+ df['headline']+ ' '+ df['article']
# 가중치 부여
df.to_csv('preprocess.csv', encoding='utf-8')
미리보기를 하면 다음과 같다
728x90
'T&DI LAB > 토픽모델링' 카테고리의 다른 글
STM 실습 (4) 토픽모델링의 해석 / 의의와 한계 (1) | 2023.11.15 |
---|---|
STM 실습 (3) 토픽모델링 적용 (1) | 2023.11.15 |
STM 실습 (1) 데이터 탐색 및 목표 설정 (1) | 2023.11.14 |
LDA modeling 실습 : 타다 금지법 기사 댓글 분석 (0) | 2023.11.05 |
토픽모델링 : 어떤 주제로 글을 썼을까? (LDA) (0) | 2023.11.05 |