TextData = pd.read_excel('train.xlsx', header=None, usecols=[1]) TextData.columns = ['label'] TextData['texts'] = pd.read_excel('train.xlsx', header=None, usecols=[0]) # 读入测试数据 TextDataTest = pd.read_excel('test.xlsx', header=None, usecols=[1]) TextDataTest.columns = ['label'] TextDataTest['texts'] = pd.read_excel('test.xlsx', header=None, usecols=[0]) # 设置计数器,用jieba.cut对句子进行分词,并用Vocab构建词表 counter = Counter() for (label, texts) in TextData.values: counter.update(jieba.cut(texts)) min_freq = 1 # 设置最小频次 vocab = Vocab(counter, min_freq=min_freq) print(vocab['我'])出现Vocab.init() got an unexpected keyword argument 'min_freq'错误怎么改
时间: 2024-01-28 10:04:04 浏览: 141
这个错误可能是因为你使用的`torchtext`版本不支持`min_freq`参数。在`torchtext 0.9.0`版本中,`Vocab`类的构造函数不再支持`min_freq`参数,你可以使用`min_freqs`参数来设置最小频次。
下面是一个示例代码,展示如何使用`min_freqs`参数设置最小频次:
```
from collections import Counter
import jieba
from torchtext.vocab import Vocab
TextData = pd.read_excel('train.xlsx', header=None, usecols=[1])
TextData.columns = ['label']
TextData['texts'] = pd.read_excel('train.xlsx', header=None, usecols=[0])
# 设置计数器,用jieba.cut对句子进行分词,并用Vocab构建词表
min_freq = 1 # 设置最小频次
counter = Counter(word for (label, texts) in TextData.values for word in jieba.cut(texts))
vocab = Vocab(counter, min_freqs={word: freq for word, freq in counter.items() if freq >= min_freq})
print(vocab['我'])
```
请尝试使用这个代码片段来解决你的问题。
阅读全文