遍历txt文件 去除停用词
时间: 2023-08-24 19:03:53 浏览: 49
好的,以下是示例代码:
```python
import jieba
# 加载停用词表
stopwords = set()
with open('stopwords.txt', 'r', encoding='utf-8') as f:
for line in f:
stopwords.add(line.strip())
# 读取文本文件并分词
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
words = jieba.lcut(text)
# 去除停用词
new_words = []
for word in words:
if word not in stopwords:
new_words.append(word)
# 将去除停用词后的结果拼接成字符串
new_text = ' '.join(new_words)
# 输出结果
print(new_text)
```
需要注意的是,以上代码仅是一个简单的示例,对于不同的文本和应用场景,还需要根据实际情况进行调整和优化。
相关问题
遍历txt文件 去除停用词 提取前10的关键词并输出
好的,我可以帮你解决这个问题。首先,需要先下载一个停用词表,比如中文停用词表,然后将其加载进来。接着,我们可以使用 Python 中的 jieba 库来进行分词,并去除停用词。最后,使用 TF-IDF 算法来提取关键词并输出前 10 个即可。
以下是示例代码:
```python
import jieba
import jieba.analyse
# 加载停用词表
stopwords = set()
with open('stopwords.txt', 'r', encoding='utf-8') as f:
for line in f:
stopwords.add(line.strip())
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 分词并去除停用词
words = []
for word in jieba.cut(text):
if word not in stopwords:
words.append(word)
# 提取关键词并输出前 10 个
keywords = jieba.analyse.extract_tags(text, topK=10, withWeight=False)
print(keywords)
```
需要注意的是,以上代码仅是一个简单的示例,对于不同的文本和应用场景,还需要根据实际情况进行调整和优化。
遍历txt文件夹,去停用词
好的,可以使用Python编写脚本来实现。您需要先安装Python和相关的库,如nltk和os。以下是可能的实现方式:
```python
import os
from nltk.tokenize import word_tokenize
from nltk.corpus import stopwords
# 设置文件夹路径和输出文件名
folder_path = "path/to/folder"
output_file = "output.txt"
# 获取停用词列表
stop_words = set(stopwords.words("english"))
# 遍历文件夹
with open(output_file, "w") as f:
for filename in os.listdir(folder_path):
file_path = os.path.join(folder_path, filename)
if os.path.isfile(file_path):
# 打开文件并读取内容
with open(file_path, "r") as file:
content = file.read()
# 分词并去除停用词
tokens = word_tokenize(content)
words = [word.lower() for word in tokens if word.isalpha() and word.lower() not in stop_words]
# 将去除停用词后的文本写入输出文件
f.write(" ".join(words) + "\n")
```
请将`path/to/folder`替换为您的文件夹路径,将`output.txt`替换为您想要的输出文件名。该脚本将遍历文件夹中的每个文件,去除停用词后将文本写入输出文件中。