我有一本字典 surnames
:
import numpy as np
surnames = {
'Sophie': np.array([138, 123]),
'Marie': np.array([126, 1, 50, 1]),
'Maximilian': np.array([111, 74]),
'Alexander': 87,
'Maria': np.array([85, 15, 89, 2]),
'Paul': np.array([70, 59]),
'Katharina': 69,
'Felix': np.array([61, 53]),
'Anna': np.array([57, 58]),
'Ben': np.array([49, 47])
}
我想对所有数组求和并将它们保存在同一个字典中,以便总和替换数组:
{
'Sophie': 261,
'Marie': 178,
'Maximilian': 185,
'Alexander': 87,
'Maria': 191,
'Paul': 129,
'Katharina': 69,
'Felix': 114,
'Anna': 115,
'Ben': 96
}
我试过这个:
new_dict = dict()
for k, v in surnames:
new_dict.update({k:sum(v)})
我认为这不起作用,因为它只对同一键的单个值求和?
我也试过这个:
data = list(surnames.values())
cl_surnames = np.array(data)
cl_surnames = np.sum(cl_surnames, 0)
我明白为什么这也不起作用,但我还能做什么?
最佳答案
您可以使用字典理解:
x = {key: np.sum(value) for key, value in dict_.items()}
关于python - 用总和替换 NumPy 数组和单个数字字典中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61971372/