def process_request(self, arg_set): inst_args = ["load_data", "temp_data", "timezone", "temp_units", "sq_ft"] inst_args = { a_name: arg_set[a_name] for a_name in inst_args if arg_set.get(a_name)} sum_args = ["start_at", "end_at", "step_size"] sum_args = { a_name: arg_set[a_name] for a_name in sum_args if arg_set.get(a_name)} ls = Loadshape(**inst_args) sum_series = ls.cumulative_sum(**sum_args) response = { "cumulative_kwh_diff": sum_series.data(), } return response
def process_request(self, arg_set): inst_args = [ "load_data", "temp_data", "timezone", "temp_units", "sq_ft" ] inst_args = { a_name: arg_set[a_name] for a_name in inst_args if arg_set.get(a_name) } sum_args = ["start_at", "end_at", "step_size"] sum_args = { a_name: arg_set[a_name] for a_name in sum_args if arg_set.get(a_name) } ls = Loadshape(**inst_args) sum_series = ls.cumulative_sum(**sum_args) response = { "cumulative_kwh_diff": sum_series.data(), } return response
my_load_shape.add_exclusion("2013-09-27 00:00:00", "2013-09-28 00:00:00") my_load_shape.add_named_exclusion("US_HOLIDAYS") # ----- generate the appropriate baseline ----- # baseline = my_load_shape.baseline(weighting_days=CUMULATIVE_SUM_WEIGHTING_DAYS, modeling_interval=900, step_size=900) # ----- set up the cumulative sum dates ----- # tz = utils.get_timezone('America/Los_Angeles') start_at = utils.str_to_datetime(CUMULATIVE_SUM_START, tz) end_at = utils.int_to_datetime(my_load_shape.baseline_series.end_at(), tz) # ----- calculate long term event performance and cumulative sum series ----- # event_performance = my_load_shape.event_performance(start_at, end_at) cumulative_sum_series = my_load_shape.cumulative_sum(start_at, end_at) # ----- assemble a payload summarizng the cumulative sum ----- # out = {} out["building"] = BUILDING_NAME out["event_name"] = CUMULATIVE_SUM_NAME out["sum_start_at"] = start_at.strftime("%Y-%m-%d %H:%M:%S") out["sum_end_at"] = end_at.strftime("%Y-%m-%d %H:%M:%S") out["event_performance"] = event_performance out["cumulative_sum_data"] = cumulative_sum_series.data() # ----- write output to file ----- # file_name = path.join(EXAMPLES_DIR, "output", "cumulative-sum-example.json") write_json(data=out, file_name=file_name) print "CUMULATIVE SUM EXAMPLE COMPLETE"