def calculate_cost_timeseries(consumption_timeseries, rate=CUBIC_METER_FLAT_RATE): timestep_kwargs = dict([ (attr, getattr(consumption_timeseries.time_step, attr)) for attr in ('length_minutes', 'length_months', 'interval_type', 'nominal_offset', 'actual_offset')]) time_step = TimeStep(**timestep_kwargs) result = Timeseries(time_step = time_step) for timestamp in consumption_timeseries: result[timestamp] = monthly_cost_from_consumption( consumption_timeseries[timestamp], rate=rate) return result