我想获取数据集中值的最大值和最小值,该值与python中的其他几个值一起



我有一个包含不同值的数据集,Meter Reference (float)同一天。我想创建一个字典的字典,其中日期作为第一个键,仪表引用作为第二个键。但是,追加函数返回,因为我得到"无"作为结果。

readings = {}
meters_dict = {}
meter_data = []
for i in dates:
    for j in meters:
        for k in data:
            if (i == k[0]):
                if (j == k[2]):
                    meters_dict[j] = meter_data.append(k[3])
                    readings[i] = meters_dict

这就是我得到的

{datetime.date(2019, 4, 10): {11622: None},
 datetime.date(2019, 4, 9): {11622: None},
 datetime.date(2019, 4, 8): {11622: None},
 datetime.date(2019, 4, 6): {11622: None},
 datetime.date(2019, 4, 5): {11622: None},
 datetime.date(2019, 4, 4): {11622: None},
 datetime.date(2019, 4, 3): {11622: None},
 datetime.date(2019, 4, 1): {11622: None},
 datetime.date(2019, 3, 30): {11622: None},
 datetime.date(2019, 3, 29): {11622: None},
 datetime.date(2019, 3, 28): {11622: None},
 datetime.date(2019, 3, 27): {11622: None},
 datetime.date(2019, 3, 26): {11622: None},

根据我对你的问题的了解,你正在寻找这样的东西:

daily_usage = []
for j in db['Date']:
    max_usage = 0
    min_usage = 100000
    for i in db['Meter Reference']:
        if (i > max_usage):
            max_usage = i
        if (i < min_usage):
            min_usage = i
    daily_usage.append( max_usage - min_usage )

您的if旁边需要一个语句(例如 (i>max_usage) (,否则它什么都不做。 通过更改这些if语句,max_usagemin_usage不是每次都相同,您应该获得更有意义的数字。 如果您的db没有按照我认为的方式设置,那么这将不起作用,如果是这种情况,您能否提供db的结构?

最新更新