KeyError:python 中的“@”

问题描述

\当我训练机器学习模型时,我得到 3 个 KeyError。但是我还没有找到原因。你知道如何避免这个错误吗?

def encode(sm_list,pad_size=50):
"""
Encoder list of smiles to tensor of tokens
"""
res = []
lens = []
for s in sm_list:
    tokens = ([1] + [__t2i[tok] 
         for tok in smiles_tokenizer(s)])[:pad_size - 1]  (the error line)
    lens.append(len(tokens))
    tokens += (pad_size - len(tokens)) * [2]
    res.append(tokens)

return torch.tensor(res).long(),lens


def smiles_tokenizer(line,atoms=None):
    if atoms is not None:
    reg = get_tokenizer_re(atoms)
else:
    reg = _atoms_re
return reg.split(line)[1::2]

__t2i = {
'>': 1,'<': 2,'2': 3,'F': 4,'Cl': 5,'N': 6,'[': 7,'6': 8,'O': 9,'c': 10,']': 11,'#': 12,'=': 13,'3': 14,')': 15,'4': 16,'-': 17,'n': 18,'o': 19,'5': 20}

我将函数用作

 enc_out = self.enc.encode(x_batch)

它抛出错误:KeyError:"@",我做错了什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...