我有一个2D Python列表。我还有一本字典。我想要生成一个与列表形状相同的numpy矩阵,其中列表中的每个元素都被字典中的相应值替换。
例如,这是我的Python列表:
[约翰玛丽
吉姆·简]
例如,我希望这样创建(一个numpy矩阵,而不是一个2D Python列表):
[85 53
76 45]
从字典中检索值的位置。
最快的方法是什么?我需要这个动作要非常快。
发布于 2016-01-29 04:47:22
可以将一个函数应用于整个numpy数组:
>>> pylist = [['John','Mary'],['Jim', 'Jane']]
>>> nparray = np.asarray(pylist)
>>> print nparray
[['John' 'Mary']
['Jim' 'Jane']]
>>> dt = {'John':86, 'Mary':53, 'Jim':76, 'Jane':45}
>>> func = np.vectorize(lambda x: dt[x])
>>> print func(nparray)
[[86 53]
[76 45]]https://stackoverflow.com/questions/35074921
复制相似问题