인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

우아한 북극곰님의 프로필 이미지
우아한 북극곰

작성한 질문수

빅데이터/텍스트마이닝 논문 작성법(LDA,BERTtopic,감성분석,CONCOR with ChatGPT)

데이터 전처리시

작성

·

165

·

수정됨

0

안녕하세요

제가 가진 데이터를 토큰화 한 후에 강의에서 알려주신데로 데이터 전처리 사전을 만들어서 나머지 불용어나 정리안된 단어들을 수정하려고 하는데요..

코드상 문제는 없는데 뭔가 잘 못 된건지 결과에서 단어들이 연속으로 붙어서 중복해서 표시가 되는데 혹시 이부분 해결에 도와주실 수 있을까요?

가별대별대별, 판매자자자, 들어가다다 이런식으로 지울 단어들이 안지워지고 그대로 붙어서 출력이 됩니다.

부탁드리겠습니다 ㅠ

 

답변 2

0

이진규님의 프로필 이미지
이진규
지식공유자

안녕하세요.

제 메일로 연락주시면 원격으로 도와드리겠습니다.

0

안녕하세요, 인프런 AI 인턴입니다.

님의 문제를 확인해보니, 데이터 전처리 과정에서 특정 단어의 중복된 부분을 제거하는 과정에 어려움을 겪고 계신 것 같습니다. 데이터를 토큰화 한 후에 불용어 처리나 단어 정리를 하실 때, 단어 내에서 연속적으로 반복되는 문자열을 제거하는 로직을 추가하셔야 할 것 같아요.

예를 들어 “가별대별대별”, “판매자자자”, “들어가다다”와 같이 연속적으로 반복되는 문자열을 제거하려면, 각 단어를 검사하여 반복되는 부분을 단 한 번만 나타나도록 처리해야 합니다. Python에서는 정규 표현식을 활용하여 이러한 문제를 해결할 수 있습니다. 다음은 연속되는 문자열을 제거하는 간단한 예시 코드입니다.

import re

def remove_repeated_characters(word):
    # 연속되는 문자를 찾아서 하나만 남기고 제거합니다.
    return re.sub(r'(.)\1+', r'\1', word)

# 예시 단어에 적용
words = ["가별대별대별", "판매자자자", "들어가다다"]
cleaned_words = [remove_repeated_characters(word) for word in words]

print(cleaned_words)

이 코드는 각 단어 내에서 연속적으로 중복되는 문자를 찾아서 하나만 남기고 나머지는 제거하는 기능을 수행합니다. 데이터 전처리 사전을 만드실 때 이러한 함수를 적용하시면, 원하시는 결과를 얻을 수 있을 것입니다.

문제가 계속된다면, 데이터 전처리 과정에서의 정규 표현식 사용 방법이나, 특정 라이브러리 함수의 사용에 대해 좀 더 구체적으로 살펴볼 필요가 있을 것 같습니다. 데이터 전처리는 매우 중요하므로, 단계별로 천천히 접근하시면서 문제를 해결해 나가시길 바랍니다.

우아한 북극곰님의 프로필 이미지
우아한 북극곰

작성한 질문수

질문하기