首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用字典中的对应值替换2D列表中的元素?

用字典中的对应值替换2D列表中的元素?
EN

Stack Overflow用户
提问于 2016-01-29 00:40:06
回答 1查看 230关注 0票数 0

我有一个2D Python列表。我还有一本字典。我想要生成一个与列表形状相同的numpy矩阵,其中列表中的每个元素都被字典中的相应值替换。

例如,这是我的Python列表:

[约翰玛丽

吉姆·简]

例如,我希望这样创建(一个numpy矩阵,而不是一个2D Python列表):

[85 53

76 45]

从字典中检索值的位置。

最快的方法是什么?我需要这个动作要非常快。

EN

回答 1

Stack Overflow用户

发布于 2016-01-29 04:47:22

可以将一个函数应用于整个numpy数组:

代码语言:javascript
运行
复制
>>> 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]]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35074921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档