0

有没有办法使用 Scikit-learn 将单词映射到从 1 开始而不是从 0 开始的索引?

示例 - 伪代码

sequence = ['welcome', 'home', 'shimon']
dict = mapping_func(sequence)

print(dict['welcome'])
print(dict['home'])
print(dict['shimon'])

虽然此代码的输出是:

1

2

3

我需要这个选项来零填充序列,如果值 0 属于一个键,它可能(并且可能会)导致错误的结果。

4

1 回答 1

0

如果您有一个单词列表,例如sequence = ['welcome', 'home', 'shimon']并且用 0 填充它,您将拥有sequence= ['welcome', 'home', 'shimon', 0, 0]. 然后你总是可以用 l.index( welcome) 来检索索引。如果您对一个单词有多个索引的情况感兴趣,您可以使用列表理解。

>>>sequence= ['welcome', 'home', 'shimon', 0, 0]
>>>indices = [i for i, x in enumerate(sequence) if x == 0]
>>>indices
[3,4]
>>>indices = [i for i, x in enumerate(sequence) if x == 'welcome']
>>>indices
[0]
于 2015-12-11T00:38:42.800 回答