如何根据以字符串为键的字典,将形状不固定的numpy字符串数组进行转换?

问题遇到的现象和发生背景

请教各位,我需要写这么一个函数,这个函数需要输入一个numpy字符串数组,输出同样shape的numpy浮点型数组。输入和输出元素的对应关系记录在一个字典里,字典的key为字符串,value为浮点数。这样的函数应该怎么写呢?

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

给个例子,题主看是否是这样的:


import numpy as np

def fun(nparray, d):
    shape = nparray.shape
    nparray = nparray.reshape(-1)
    arr = np.array(shape).reshape(-1)
    arr = list(map(lambda x: d[x] if x in d.keys() else 0, nparray))
    return np.array(arr).reshape(shape)

nparray = np.array([['key1','key2'],['key3','key4']])
print(nparray)
d = {'key1':2.5,'key2':3.6,'key3':4.7,'key4':2.4}
print(fun(nparray, d))

img

遍历数组,遍历一个就加入一个字典,不过key不能重复