[英]How to find max value for each category in a dictionary
嗨,这里需要一些关于我的代码的帮助。
for i, (l,v) in enumerate(dict(list(zip(estate_2019,resale_2019))).items()):
Estate_2019 是房地产列表(25 个唯一名称,但有几千个条目),而 resale_2019 是相应的销售价格(几千个条目)。 我正在寻找 Estate_2019 中每个庄园的最大销售价值和庄园名称,因此它将是一个包含 25 个最大转售价的庄园的列表。
Estate_2019 和 resale_2019 都是从 csv 中提取的。 resale_2019 已格式化为浮点数。
print(l,v)
给了我房地产清单,但我不确定 python 如何检索销售价格。 感谢这里的任何帮助。 另外,我只能使用 numpy 因为这是家庭作业。
尝试: 按键分组字典并找到最大值或https://www.kite.com/python/answers/how-to-find-the-max-value-in-a-dictionary-in-python
虽然我不确定如何使用 numpy 来解决它
您可以使用字典来存储每个房地产的所有价格列表作为键。 例如,使用默认字典,您可以轻松地做到这一点,如下所示:
from collections import defaultdict
import numpy as np
prop_dict = defaultdict(list)
for est, price in zip(estate_2019, sale_2019):
prop_dict[est].append(price)
一旦你有了带有相应价目表的字典,你可以通过使用np.max()
甚至 python 的本机max()
function 来获得每个键的最大价格值,如果列表不是太大的话。
max_vals = {estate: np.max(np.array(value)) for estate, value in prop_dict.items()}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.