[python] Jupyter Notebook에서 자연어 처리 실습 예제

이번 실습에서는 Jupyter Notebook에서 자연어 처리를 위한 예제 코드를 제공합니다. 자연어 처리는 컴퓨터 과학의 한 분야로, 인간이 사용하는 언어를 컴퓨터가 처리하는 기술을 의미합니다. Jupyter Notebook은 데이터 분석과 시각화를 위한 툴로서 많은 데이터 과학자들과 연구자들에게 널리 사용되는 환경입니다.

예제 1: 텍스트 데이터 불러오기

# 필요한 라이브러리 및 데이터 불러오기
import pandas as pd

# 텍스트 데이터 불러오기
text_data = pd.read_csv('text_data.csv')

# 데이터 확인
print(text_data.head())

예제 2: 텍스트 전처리

# 필요한 라이브러리 불러오기
import re
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize

# 특수문자 제거
def remove_special_characters(text):
    return re.sub(r'[^a-zA-Z\s]', '', text)

# 불용어 제거
def remove_stopwords(text):
    stop_words = set(stopwords.words('english'))
    words = word_tokenize(text)
    return ' '.join([word for word in words if word.lower() not in stop_words])

# 전처리 적용
text_data['clean_text'] = text_data['text'].apply(remove_special_characters)
text_data['clean_text'] = text_data['clean_text'].apply(remove_stopwords)

# 처리된 데이터 확인
print(text_data['clean_text'].head())

예제 3: 단어 빈도 분석

from collections import Counter
import matplotlib.pyplot as plt

# 단어 빈도 카운트
word_freq = Counter(' '.join(text_data['clean_text']).split())

# 상위 10개 단어 시각화
top_words = word_freq.most_common(10)
top_words_df = pd.DataFrame(top_words, columns=['word', 'freq'])

# 시각화
plt.figure(figsize=(10, 6))
plt.bar(top_words_df['word'], top_words_df['freq'])
plt.xlabel('Word')
plt.ylabel('Frequency')
plt.title('Top 10 Words Frequency')
plt.show()

이렇게 Jupyter Notebook을 사용하여 자연어 처리를 위한 간단한 예제를 수행할 수 있습니다.

향후 자연어 처리 기술은 더욱 발전하여 다양한 분야에서 활용될 것으로 기대됩니다.

참고 자료