python实现tf-idf中文文本的分类,包含分词,构建词典
时间: 2024-03-25 07:42:06 浏览: 65
下面是一个示例代码,实现了中文文本的分词和构建词典:
```python
import jieba
import os
# 读取数据
def read_data(path):
X, y = [], []
for filename in os.listdir(path):
with open(os.path.join(path, filename), 'r', encoding='utf-8') as f:
content = f.read()
X.append(content)
y.append(filename.split('.')[0])
return X, y
# 分词
def tokenize(text):
return list(jieba.cut(text))
# 构建词典
def build_vocab(X):
vocab = set()
for text in X:
words = tokenize(text)
vocab.update(words)
return dict(zip(vocab, range(len(vocab))))
# 加载数据
X, y = read_data('data')
# 构建词典
vocab = build_vocab(X)
print('Vocabulary size:', len(vocab))
print('Vocabulary:', vocab)
```
以上代码中,read_data函数用于读取数据,tokenize函数用于使用jieba库进行分词,build_vocab函数用于构建词典。最后,加载数据并输出构建的词典,用于后续的tf-idf计算。
阅读全文