Python 词向量的平均值
我有一本字典,它包含单词作为键,向量作为值Python 词向量的平均值,python,numpy,Python,Numpy,我有一本字典,它包含单词作为键,向量作为值 my_dict = {'new': array([ 6.77980e-02, -2.07800e-02, -1.22845e-01, 1.75853e-01, 1.49210e-02]), 'its': array([ 7.85300e-03, -8.81160e-02, 2.60125e-01, 1.77740e-02, -1.09075e-011])} 我想使用np.average()计算这些给定单词向量的元素平均值
my_dict = {'new': array([ 6.77980e-02, -2.07800e-02, -1.22845e-01, 1.75853e-01, 1.49210e-02]),
'its': array([ 7.85300e-03, -8.81160e-02, 2.60125e-01, 1.77740e-02, -1.09075e-011])}
我想使用np.average()
计算这些给定单词向量的元素平均值。结果应该是一个np.ndarray
这是我的尝试:
average = [np.average(my_dict[x], axis=None) for x in self.my_dict]
为了计算所有值的一个平均值(而不是为每个向量收集一组无意义平均值),请尝试:
(如果它没有返回您期望的形状,请尝试每个显式的
轴=
可能性。)您的尝试成功了吗?有错误吗?它返回了一个列表,而不是np.ndarray。那么您的问题是如何将列表转换为数组?是的,或者我应该在返回ndarray的尝试中添加什么。@SayedSabry它返回了一个列表,而不是np.ndarray。这并不奇怪,因为你使用的是列表理解,对吧?
np.average(list(my_dict.values()))