将map转换为np.array时,为什么id_dict超出范围?

时间:2019-06-11 10:47:56

标签: python lambda scope

我正在尝试使用 lambda 函数为某些词典重新编制索引。

我正在尝试从“数据”中获取唯一索引,然后在“ id_dict”中对其重新编制索引。但是,当我尝试使用映射并将其转换为np.array时,似乎超出了范围。


uniq = list(set(data))
id_dict = {old: new+1 for new, old in enumerate(sorted(uniq))}
seq = map(lambda x: id_dict[x], data)
mapped_data = np.fromiter(seq, dtype=np.int32)

        2
        3 id_dict = {old: new+1 for new, old in enumerate(sorted(uniq))}
  ----> 4 seq = map(lambda x: id_dict[x], data)
        5 mapped_data = np.fromiter(seq, dtype=np.int32)

 NameError: name 'id_dict' is not defined

0 个答案:

没有答案