无关文本数据的类型
了解不同类型的无关文本数据。
import nltk import pandas as pd from nltk.corpus import stopwords nltk.download('stopwords', quiet=True) stop_words = set(stopwords.words("english"))
df = pd.read_csv('reviews.csv') filtered_reviews = [] for review in df['review_text']: words = review.split() filtered_words = [word for word in words if word.lower() not in stop_words] filtered_text = " ".join(filtered_words) filtered_reviews.append(filtered_text) df['filtered_review_text'] = filtered_reviews print(df['filtered_review_text'])
import re import pandas as pd
df = pd.read_csv('reviews.csv') def clean_text(text): cleaned_text = re.sub(r'[^a-zA-Z\s]', '', text) return cleaned_text df['cleaned_text'] = df['review_text'].apply(clean_text) print(df['cleaned_text'])
import re from bs4 import BeautifulSoup import pandas as pd
df = pd.read_csv('reviews.csv') def remove_html_tags(text): soup = BeautifulSoup(text, "html.parser") cleaned_text = soup.get_text() return cleaned_text df['cleaned_text'] = df['review_text'].apply(remove_html_tags) print(df['cleaned_text'])
import re import pandas as pd
df = pd.read_csv('reviews.csv')
def remove_metadata(text):
pattern = r"Date: [A-Za-z]{3,9} \d{1,2}, \d{4}"
match = re.search(pattern, text)
if match:
df['metadata'] = match.group()
cleaned_text = re.sub(pattern, "", text)
else:
df['metadata'] = ""
cleaned_text = text
return cleaned_text
df['cleaned_text'] = df['review_text'].apply(remove_metadata)
print(df['cleaned_text'])