NLP에서 데이터 정제를 하려고 합니다.
pandas를 쓰면서 자주 사용하지는 않지만, 알면 도움이 되는 내용을 정리해 보았습니다.
pandas로 csv파일 읽어올 때, 필요한 행만 불러오기
# 'nrows' 옵션 사용
data = pd.read_csv("/data/Reviews.csv", nrows=100000)
중복 제거
# pandas 함수인 'drop_duplicates()'를 사용하여 중복을 쉽게 제거할 수 있다!
data.drop_duplicates(subset = ['Text'], inplace=True)
오래걸리는 일들 프로세스 시각화하기
사용 모듈: tqdm
clean_summary = []
# tqdm을 사용하여 진행 상황 표시
for i in tqdm(data.index, desc="Preprocessing Summary"):
clean_summary.append(preprocess_sentence(data.loc[i, 'Summary'], False))
print("Summary 전처리 후 결과: ", clean_summary[:5])
케라스 토크나이저
# 토크나이저 사용
tokenizer = Tokenizer();
# 토크나이저 함수 - fit_on_texts()
tokenizer.fit_on_texts(data) # 입력된 데이터로부터 단어 집합 생성
# 개수 확인 - . 현재 생성된 단어 집합은 src_tokenizer.word_index에 저장되어 있어요.
print(tokenizer.word_index)
# 현재 생성된 단어 집합
print(tokenizer.word_index)
이상입니다. 글 읽어주셔서 감사합니다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
[파이썬] Lambda 람다, map, reduce 함수, 일급객체 (0) | 2024.05.21 |
---|---|
[파이썬] 코딩도장 이터레이터 문제 (39.6 - 39.7) (1) | 2024.05.20 |
[파이썬] 이터레이터, 제너레이터, 데코레이터 (0) | 2024.05.20 |
[파이썬] 리스트, 튜플, 집합, 딕셔너리 (0) | 2024.05.16 |
머신러닝을 위한 파이썬 정리 (0) | 2024.05.16 |