In [1]:
import pandas as pd
from collections import namedtuple
import numpy as np
import time
import pickle
from importlib import reload
import sys
sys.path.insert(0, '../')
import bench_util
%load_ext line_profiler
In [2]:
# Read the CSV file and convert the billing period dates into
# real Pandas dates
fn = 'data/20171017 AllDataExport.csv'
dfu = pd.read_csv(fn, parse_dates=['From', 'Thru'])
# Pickle it for use in the other notebook
dfu.to_pickle('df_raw.pkl')
dfu.head()
Out[2]:
Site ID
Site Name
Vendor Code
Vendor Name
Account Number
Bill Date
Due Date
Entry Date
Invoice #
Voucher #
From
Thru
Service Name
Item Description
Meter Number
Usage
Cost
Units
Account Financial Code
Site Financial Code
0
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
09/28/2010
09/28/2010
01/26/2011
NaN
NaN
2008-11-19
2010-09-28
Oil #1
FED LUS TX
NaN
NaN
3.00
NaN
NaN
NaN
1
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
09/28/2010
09/28/2010
01/26/2011
NaN
NaN
2008-11-19
2010-09-28
Oil #1
Fuel Oil #1 (Gallons)
NaN
3000.0
7950.00
Gallons
NaN
NaN
2
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
09/30/2010
09/30/2010
01/26/2011
NaN
NaN
2010-09-28
2010-09-30
Oil #1
FED LUS TX
NaN
NaN
1.31
NaN
NaN
NaN
3
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
09/30/2010
09/30/2010
01/26/2011
NaN
NaN
2010-09-28
2010-09-30
Oil #1
Fuel Oil #1 (Gallons)
NaN
1307.0
3463.82
Gallons
NaN
NaN
4
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
01/14/2011
01/14/2011
07/28/2014
NaN
NaN
2010-09-30
2011-01-14
Oil #1
Fuel Oil #1 (Gallons)
NaN
1880.0
5545.41
Gallons
NaN
NaN
In [3]:
len(dfu)
Out[3]:
117276
In [4]:
# Make a utility function object
reload(bench_util)
ut = bench_util.Util(dfu, '../data/Other_Building_Data.xlsx')
In [5]:
cols = ['Site ID', 'Vendor Code', 'Vendor Name', 'Account Number', 'Service Name', 'Item Description',
'Meter Number', 'Units', 'Account Financial Code', 'Site Financial Code']
for col in cols:
print('{0:24s}: {1}'.format(col, list(dfu[col].unique())))
Site ID : ['TRGR', 'CLXGP2', 'CLXES1', 'CLXSO1', 'CLXSM1', '11', 'TRPBG1', 'NWLBG1', '05', 'HSPSWP', '15A', 'BAOBG1', '15', '15B', 'DIPMP1', 'ANSBG1', 'MSRSWP', 'PRW', '03', '06', '09', '42', '04', '104', '13', '27', '28', '29', '44', '40', '47', '07', '08', 'CLX001', 'CLX002', 'CLX003', 'CLX004', 'VMP001', 'TRPAIR', 'GFP001', 'CACBG1', 'HEZ001', 'KWP001', 'ASLELC1', 'ASLPL1', 'ASLGP2', 'GRP001', '23', 'BALHHW', '12', 'KIP001', 'HEMBG1', '45', '22', 'WSPSWP', 'GSWNP', 'BHPCCS', 'NPP001', 'TRANS10', '14', '10', 'SHW001', 'TRANS06', 'BHPSKI3', 'BHPSKI4', '49', 'TRANS09', 'BAP001', 'ASLELC2', '34', 'KEP001', 'NWLP01', 'CBS001', 'MTP001', 'WSPP01', 'GF001', 'ASLTVR', 'ASLCHU', 'ASLCV1', 'ASLC18', 'ASLPIH', 'ASLHIS', 'ASLSEA', 'ASLC21', 'CSP001', 'WF001', 'MF001', 'MSLL001', '76', 'BHPSKI2', '37', 'GRPLFT', 'DOGPRK', 'MNPPRK', 'SF001', 'NBP001', 'STRBG1', 'MSWBG1', 'TWOCOM', 'NWP001', 'NRP001', 'MSWBG2', 'LF001', 'BENBG1', 'LEABG1', 'CRB001', 'WSPEMR', 'ASLGDM', 'ASLSQD', 'ASLC47', 'WSPGAR', 'ASLC52', 'BHPBHG', 'BHPBHW', 'BHPBHL', 'NPL', '38', '39', 'ADLER', '36', 'CEC', 'TRANS02', 'TRANS05', '43', '20', '46', 'TRANS03', 'TRANS08', 'BHPSKI1', 'TRANS04', 'TRS001', 'MSWWAR', 'MSP001', 'TRANS01', 'TRANS07', '16', 'Emer S T']
Vendor Code : ['VP287678', 'VU797000', 'VA140014', 'VG354933', 'VF314940', 'VP 648001', 'WO', 'VG372746', 'AW', 'College', 'UN.REFUSE', 'Valley Water', 'VN590507', 'UAF', 'US AIR', 'US ARMY', 'IMCOM']
Vendor Name : ['Sourdough Fuel (Petro Star)', 'Army Corps of Engineers', 'Aurora Energy', 'Golden Valley Electric', 'Fairbanks Natural Gas', 'Pioneer Wells Inc', 'Waste Oil', 'Golden Heart Utilities', 'Alaska Waste', 'College Utilities', 'University Refuse', 'Valley Water', 'City of North Pole Utilities', 'UAF-Division of Utilities', 'U.S. Air Force', 'U.S. Dept. of Army', 'U.S. Army Alaska (IMCOM)']
Account Number : ['00013297 (closed)', '01 River Park', '02 FNSB Entrance', '03 FNSB Office', '04 FNSB Bunker', '05-071-0', '05-092-2', '08-105-0', '08-112-0', '08-113-0', '08-114-0', '100850-7', '100932', '100968-7', '100985-1', '101024', '101024-8', '10282 (1920 LATHROP)', '10282 (2408 DAVIS)', '10282 (805 14TH AVE)', '10282 (809 PIONEER BAO)', '10282 (3175 PEGER-METER #2)', '10282 (3175 PEGER-TRG BG1)', '10283 - DENALI', '10283 - HUNTER', '10283 - JOY', '10283 - LADD', '10283 - NORDALE', '10283 - NUTRITION SRVS', '10283 - RYAN', '10283 - TANANA', '10283 - WEST VALLEY', '10283 - WOODRIVER', '10283-ANNE WIEN', '10283-EFFIE KOKRINE CHARTER', '10283-RANDY SMITH', '10283-U-PARK', '103480', '104270-4', '104271-2', '104272-0', '104273-8', '104274', '104292', '104380-1', '104487-4', '104544-2', '10582', '10583', '10584', '10585', '108001-9', '108974', '109138', '109191-7', '109193-3', '11-188-1', '11-290-1', '110825', '1111', '11212 (2010 2nd CARL)', '112327-2', '112356-1', '112357', '112651', '114102', '114201', '114202-5', '114203-3', '114229 (parking lot)', '114295-9', '114344', '11930-5', '1234', '12499-0', '125468', '1271006300 (HHW Facil)', '1271006400 (HEM Facil)', '1271006700 (Main Landf)', '1311001100', '1312550000', '1312551000', '1313746310', '13296-9', '13475', '13640', '136935', '13760', '137909', '138695', '138868', '142778-0', '147317-2', '150272-3', '153175-0033', '154841', '15672', '156744-5', '157632', '157633', '161849', '162846-0', '167819-2', '16896', '172230-5', '172995-3', '1772710200', '1772710300', '179672', '181517', '182918', '185881-0', '18769', '1900336700', '1900339300', '1900348000', '1900348100', '1900349800', '1917008000', '1917008100', '1918027500', '1918029000', '1918029100', '1918029110', '1918029500', '1918037000', '1919073000', '1919073100', '197933', '1981025000', '1984040000', '198436-8', '1985007100', '1986001500', '1988049100', '1990005500', '1990029100', '1995007000', '1995008500', '1995016700', '1998005610', '1998037410', '1998037700', '1998037900', '1998038100', '1998038300', '1998038710', '1998038800', '1998038900', '1998039000', '1998073000', '1998073600', '1998073610', '1998076200', '1998087200', '1998097300', '1998097500', '1998097600', '1998099600', '201169-0', '201172-4', '201192-2', '205018-5', '212679-5', '212681-1', '212682-9', '220060-8', '221635-6', '222628', '222763-5', '224393-9', '224394-7', '225097-5', '227492-6', '229565-7', '230560-5', '230561-3', '235545', '235753-1 (closed)', '235840', '235937-0', '235939-6', '235941-2', '235942-0', '238759', '2440165000', '2440166000', '2440271010', '2440427500', '2440565100', '25411', '25431', '25439', '25465', '25478 (closed)', '25482', '25692', '25716', '2610703100', '2661016000', '2661017000', '2670698600', '2711001010', '2711179500', '28219', '28220', '28224', '28225', '28226', '2900170000', '2900180000', '2909001600', '2909031000', '2909041500', '2984040000', '2999125400', '2999127300', '2999128500', '2999128600', '2999128700', '2999131600', '2999132000', '2999132100', '2999132200', '2999132300', '2999133100', '2999133200', '2999133300', '2999133400', '2999133500', '304861-8', '31850', '318609 (closed)', '321032', '321383', '321389', '321404', '321405', '32330', '32331', '32439', '32532', '340325', '343585', '355433 (closed)', '357683', '357764', '357845', '368926', '368927', '374191', '38442001 (CARLSON CENT)', '38442002 (CAR CEN EM G)', '39024', '39124', '39196', '393044 (closed)', '39384001 (CHURCH, OFFI)', '39384002 (CIVIC CENTER)', '39384003 (GOLD DOME)', '39384004 (PIONEER HALL)', '39384005 (SQUARE DANCE)', '39384006 (PP RED BARN)', '39384007 (BIG DIPPER)', '39384012 (MARY SIAH)', '39384013 (WES POOL)', '39384014 (ZAMBONI RM)', '39384015 (HAMME POOL)', '39384016 (NOEL WIEN LI)', '39384017 (GSWNP)', '39384018 (BOROUGH ADMI)', '39384019 (TRANS GAR DS)', '39384020 (CL BUNKER)', '39384021 (CHENA LAKES)', '39384023 (BHL tank)', '39384024 (MRR)', '39384026 (MSW)', '39384027 (closed)', '39384053 (BHG)', '39384057 (BHSB)', '39384058 (BHW)', '39384059 (BST)', '39384060 (ASLTVR)', '39384062 (PP HIST SOC)', '39384065 (CLRA generat)', '39384067 (NPL)', '39385001 (TRANS GAR)', '39386003', '39386008', '39386010', '39386036', '39389003 (LANDFILL OFF)', '39389006 (HEB)', '39389007 (LEACHATE)', '39389009 (SCALES)', '40108', '4012700110', '4012700210', '4012700510', '4012700610', '4012700710', '4012926010', '4019245200', '4019245300', '4019245400', '4019245500', '4019245600', '4019911210', '410564', '410585', '41762-6', '418365', '442905', '45641-8', '456581', '457-001', '457-002', '457-003', '457-004', '457-005', '457-006', '457-007', '457-008', '457-009', '457-010', '457-011', '457-012', '457-013', '457-014', '457-015', '457-016', '457-017', '457-018', '457-019', '457-020', '457-021', '457-022', '457-023', '457-024', '457-025', '457-026', '457-027', '457-028', '457-030', '46658-1', '471061', '473902', '475443', '47678-8', '5000', '5012', '53095', '55000001', '55001001', '55001002', '55001003', '55001004', '55002001', '55003001', '55004001', '55005001', '55006001', '55006002', '55006003', '55007001', '55008001', '55009001', '55010001', '55011001', '55011002', '55012001', '55013001', '55014001', '55015001', '55016001', '55017001', '55018001', '55019001', '5502-0', '55020001', '55021001', '55022001', '55023001', '55024001', '55024002', '55025001', '55026001', '55027001', '55028001', '55029001', '55030001', '55031001', '55032001', '5566', '558095', '5588.01', '5590.01', '5591.01', '560681', '562748', '562750', '562751', '562753', '564068', '56466', '566057', '570729', '572066', '572574', '572576', '572582', '572847', '577004', '586.01', '592.01', '59793', '59794-8 (closed)', '60000-7', '60001-5', '6067.02', '6067.03', '6084.01', '61701', '61704-3', '61709-2', '62263', '6258.01', '62853-7', '67750', '67754', '67758', '71896', '72180-3', '72182-9', '75188-3', '76005-8', '76471-2', '80589', '84821-8', '92221', '92695', '97876-7', 'AFS709348', 'ANDERSON', 'ARCTIC LIGHT', 'AW00-CWATER', 'AW00-ENSC', 'AW00-HUT-COMPOUND', 'AW01-CEC', 'AW02-SON49', 'AW03-WVH28', 'AW04-UPK07', 'AW05-WLR38', 'AW06-WDR29', 'AW07-TRV37', 'AW08-TIC39', 'AW09-TAN27', 'AW10-RYN13', 'AW11-RSM47', 'AW12-FMD15', 'AW13-NPM22', 'AW14-NPH23', 'AW15-NPE12', 'AW16-NDL04', 'AW17-LTH05', 'AW18-LAD42', 'AW19-JOY09', 'AW20-HUT14', 'AW21-HNT06', 'AW22-HLA40', 'AW23-DNL03', 'AW24-PLC36', 'AW25-BNT08', 'AW26-AWE44', 'AW27-FAC11', 'AW28-CHI45', 'AW29-BGR34', 'Badger', 'BEN EIELSON', 'C12700810', 'C12701010', 'C1900111000', 'C1900111100', 'C1900112400', 'C1900112500', 'C1900334100', 'C1911190000', 'C1980116000', 'C1980117000', 'C1981110000', 'C25424', 'C25430', 'C25437', 'C25448', 'C2901490000', 'C2910113000', 'C2911160000', 'C2981114000', 'C2991116000', 'C299127600', 'C2999123900', 'C2999124000', 'C2999124100', 'C2999124200', 'C2999125300', 'C2999125500', 'C2999125600', 'C2999125700', 'C2999127400', 'C2999130200', 'C2999130300', 'C4012700910', 'C4012701100', 'C4012942500', 'C4019200600', 'C4019200800', 'C4019202700', 'C4019203800', 'C4019203900', 'C4019204700', 'C4019205400', 'C4019206600', 'C4019207100', 'C4019207200', 'C4019207300', 'C4019209500', 'C4019211800', 'C4019229000', 'C4019230000', 'C4019231000', 'C4019234000', 'C4019238400', 'C4019242300', 'C4019242400', 'C4019242500', 'C4019242600', 'C4019242700', 'C4019242900', 'C4019999350', 'CRAWFORD', 'IMPC-WPW-U', 'Pearl Creek', 'Salcha', 'TWO RIVERS', 'Weller']
Service Name : ['Oil #1', 'Oil #2', 'Electricity', 'Steam', 'Natural Gas', 'Water', 'Sewer', 'Refuse']
Item Description : ['FED LUS TX', 'Fuel Oil #1 (Gallons)', 'FED OS TX', 'Tax: Regulatory', 'Misc. fee', 'Energy charge', 'Electricity charge', 'Steam (klbs)', 'Late charge', 'Steam (lbs)', 'Regulatory Cost Charge', 'Steam (MMBtu) CDHW', 'Service charge', 'Surcharge', 'Customer charge', 'Other charges', 'kVAR', 'KW Charge', 'Fuel cost adjustment', 'Customer Charge', 'On peak demand', 'Power Factor Charge', 'Previous balance adj.', 'Fuel & Purchased Power', 'Utility Charge', 'Demand Charge', 'Actual demand', 'Natural gas (CCF)', 'Gas Charge (CCF)', 'Cost adjustments', 'Misc. credit', 'Fuel Adjustment', 'Discount', 'kVARh/Excess kVARh', 'Water Usage (Gallons)', 'Service activation', 'Facility charge', 'Sewer Usage (Gallons)', 'Sewer Fixed Charge', 'Customer Charge - Sewer', 'Cost of Energy Adjustmen', 'meter charge - wells', 'Water Fixed Charge', 'Fire Protection', 'Meter charge', 'Customer Charge - Water', 'Plant Replacement ADJ', 'Fire charge', 'Container rental', 'Refuse (Loads)', 'Mileage', 'Garbage Charges', 'Install / Remove meter', 'Primary Service Discount', 'Water (Cgallons)', 'Taxes and Fees', 'Service deposit', 'BOD', 'Tax: City', 'Distribution demand', 'Misc. debit', 'Rate Reduction', 'HO#2', 'Tax: Municipal', 'records fee', 'connect fee', 'Water Base', 'FRR Water', 'Sewer Base', 'FRR Sewer', 'Water (kGal)', 'Refuse (Tons)', 'Pickup charge']
Meter Number : [nan, 201278.0, 206219.0, 201223.0, 201236.0, 204584.0, 87678.0, 77380.0, 48346.0, 206204.0, 89660.0, 205188.0, 88051.0, 203725.0, 112407.0, 89672.0, 69850.0, 206178.0, 88935.0, 88921.0, 56488.0]
Units : [nan, 'Gallons', 'kWh', 'klbs', 'lbs', 'MMBtu', 'kVAR', 'kW', 'CCF', 'kVARh', 'Loads', 'Cgallons', 'kGal', 'Tons']
Account Financial Code : [nan, 61831.0, 61838.0, 61837.0, 61833.0, 61836.0]
Site Financial Code : [nan]
In [6]:
dfu[dfu['Service Name']=="Oil #2"]
Out[6]:
Site ID
Site Name
Vendor Code
Vendor Name
Account Number
Bill Date
Due Date
Entry Date
Invoice #
Voucher #
From
Thru
Service Name
Item Description
Meter Number
Usage
Cost
Units
Account Financial Code
Site Financial Code
18
TRGR
FNSB-Transit Garage
VP287678
Sourdough Fuel (Petro Star)
00013297 (closed)
04/11/2011
04/11/2011
11/19/2013
NaN
NaN
2011-03-12
2011-04-11
Oil #2
Tax: Regulatory
NaN
NaN
3.6
NaN
NaN
NaN
In [7]:
# Save out the Unique Site IDs and Names
#df_sites = pd.DataFrame(data=list(set(zip(dfu['Site ID'], dfu['Site Name']))))
#df_sites.to_excel('sites.xlsx')
In [8]:
# Filter down to the needed columns and rename them
cols = [
('Site ID', 'site_id'),
('From', 'from_dt'),
('Thru', 'thru_dt'),
('Service Name', 'service_type'),
('Item Description', 'item_desc'),
('Usage', 'usage'),
('Cost', 'cost'),
('Units', 'units'),
]
old_cols, new_cols = zip(*cols) # unpack into old and new column names
dfu1 = dfu[list(old_cols)].copy() # select just those columns from the origina dataframe
dfu1.columns = new_cols # rename the columns
dfu1.head()
Out[8]:
site_id
from_dt
thru_dt
service_type
item_desc
usage
cost
units
0
TRGR
2008-11-19
2010-09-28
Oil #1
FED LUS TX
NaN
3.00
NaN
1
TRGR
2008-11-19
2010-09-28
Oil #1
Fuel Oil #1 (Gallons)
3000.0
7950.00
Gallons
2
TRGR
2010-09-28
2010-09-30
Oil #1
FED LUS TX
NaN
1.31
NaN
3
TRGR
2010-09-28
2010-09-30
Oil #1
Fuel Oil #1 (Gallons)
1307.0
3463.82
Gallons
4
TRGR
2010-09-30
2011-01-14
Oil #1
Fuel Oil #1 (Gallons)
1880.0
5545.41
Gallons
In [9]:
dfu1.query('service_type == "Oil #2"')
Out[9]:
site_id
from_dt
thru_dt
service_type
item_desc
usage
cost
units
18
TRGR
2011-03-12
2011-04-11
Oil #2
Tax: Regulatory
NaN
3.6
NaN
In [10]:
# Unique sets of service_type and units
df_usage = dfu1.query('usage > 0')
set(zip(df_usage.service_type, df_usage.units))
Out[10]:
{('Electricity', 'kVAR'),
('Electricity', 'kVARh'),
('Electricity', 'kW'),
('Electricity', 'kWh'),
('Natural Gas', 'CCF'),
('Oil #1', 'Gallons'),
('Refuse', 'Loads'),
('Refuse', 'Tons'),
('Sewer', 'Gallons'),
('Steam', 'MMBtu'),
('Steam', 'klbs'),
('Steam', 'lbs'),
('Water', 'Cgallons'),
('Water', 'Gallons'),
('Water', 'kGal')}
In [11]:
df_usage.query('service_type == "Electricity" and units == "kVARh"')
Out[11]:
site_id
from_dt
thru_dt
service_type
item_desc
usage
cost
units
10286
HSPSWP
2006-07-17
2006-08-15
Electricity
kVARh/Excess kVARh
1.0
2.47
kVARh
10298
HSPSWP
2006-09-15
2006-10-13
Electricity
kVARh/Excess kVARh
1.0
20.22
kVARh
74072
PRW
2012-09-21
2012-10-19
Electricity
kVARh/Excess kVARh
1.0
0.00
kVARh
In [12]:
# Back to processing the main utility bill DataFrame
# Now collapse all the non-usage charges into one item_desc: Other Charge
# This cuts the processing time in half due to not having to split a whole
# bunch of non-consumption charges.
dfu1.loc[np.isnan(dfu1.usage), 'item_desc'] = 'Other Charge'
dfu1.units.fillna('-', inplace=True) # Pandas can't do a GroupBy on NaNs, so replace with something
dfu1 = dfu1.groupby(['site_id', 'from_dt', 'thru_dt', 'service_type', 'item_desc', 'units']).sum()
dfu1.reset_index(inplace=True)
dfu1.head(20)
Out[12]:
site_id
from_dt
thru_dt
service_type
item_desc
units
usage
cost
0
03
2005-11-28
2005-12-29
Sewer
Other Charge
-
NaN
285.06
1
03
2005-11-28
2005-12-29
Water
Other Charge
-
NaN
53.25
2
03
2005-11-28
2005-12-29
Water
Water Usage (Gallons)
Gallons
32400.0
240.65
3
03
2005-12-12
2006-01-12
Electricity
Electricity charge
kWh
31.0
23.20
4
03
2005-12-13
2006-01-13
Electricity
Electricity charge
kWh
36.0
23.74
5
03
2005-12-20
2006-01-23
Electricity
Electricity charge
kWh
43608.0
5546.13
6
03
2005-12-29
2006-01-30
Sewer
Other Charge
-
NaN
210.24
7
03
2005-12-29
2006-01-30
Water
Other Charge
-
NaN
53.25
8
03
2005-12-29
2006-01-30
Water
Water Usage (Gallons)
Gallons
23800.0
180.77
9
03
2006-01-01
2006-01-31
Natural Gas
Natural gas (CCF)
CCF
7394.0
9412.56
10
03
2006-01-01
2006-01-31
Natural Gas
Other Charge
-
NaN
45.54
11
03
2006-01-01
2006-01-31
Refuse
Other Charge
-
NaN
25.00
12
03
2006-01-01
2006-01-31
Refuse
Refuse (Loads)
Loads
7.0
232.54
13
03
2006-01-12
2006-02-10
Electricity
Electricity charge
kWh
34.0
24.11
14
03
2006-01-13
2006-02-13
Electricity
Electricity charge
kWh
38.0
24.61
15
03
2006-01-23
2006-02-22
Electricity
Electricity charge
kWh
48480.0
6039.47
16
03
2006-01-30
2006-03-02
Sewer
Other Charge
-
NaN
289.41
17
03
2006-01-30
2006-03-02
Water
Other Charge
-
NaN
53.25
18
03
2006-01-30
2006-03-02
Water
Water Usage (Gallons)
Gallons
32900.0
244.15
19
03
2006-02-01
2006-02-28
Natural Gas
Natural gas (CCF)
CCF
5251.0
6684.52
In [13]:
# Test the split_period function
bench_util.split_period('2016-01-25', '2016-06-26')
# this takes about 3.5 msec to do, which is pretty long
Out[13]:
[PeriodSplit(cal_year=2016, cal_mo=1, bill_frac=0.042483660130718956, days_served=6.5),
PeriodSplit(cal_year=2016, cal_mo=2, bill_frac=0.18954248366013071, days_served=29.0),
PeriodSplit(cal_year=2016, cal_mo=3, bill_frac=0.20261437908496732, days_served=31.0),
PeriodSplit(cal_year=2016, cal_mo=4, bill_frac=0.19607843137254902, days_served=30.0),
PeriodSplit(cal_year=2016, cal_mo=5, bill_frac=0.20261437908496732, days_served=31.0),
PeriodSplit(cal_year=2016, cal_mo=6, bill_frac=0.16666666666666666, days_served=25.5)]
In [14]:
# Split all the rows into calendar month pieces and make a new DataFrame
recs=[]
for ix, row in dfu1.iterrows():
# it is *much* faster to modify a dictionary than a Pandas series
row_tmpl = row.to_dict()
# Pull out start and end of billing period; can drop the from & thru dates now
# doing split-up of billing period across months.
st = row_tmpl['from_dt']
en = row_tmpl['thru_dt']
del row_tmpl['from_dt']
del row_tmpl['thru_dt']
for piece in bench_util.split_period(st, en):
new_row = row_tmpl.copy()
new_row['cal_year'] = piece.cal_year
new_row['cal_mo'] = piece.cal_mo
new_row['days_served'] = piece.days_served
new_row['usage'] *= piece.bill_frac
new_row['cost'] *= piece.bill_frac
recs.append(new_row)
dfu2 = pd.DataFrame(recs, index=range(len(recs)))
dfu2.head()
Out[14]:
cal_mo
cal_year
cost
days_served
item_desc
service_type
site_id
units
usage
0
11
2005
22.988710
2.5
Other Charge
Sewer
03
-
NaN
1
12
2005
262.071290
28.5
Other Charge
Sewer
03
-
NaN
2
11
2005
4.294355
2.5
Other Charge
Water
03
-
NaN
3
12
2005
48.955645
28.5
Other Charge
Water
03
-
NaN
4
11
2005
19.407258
2.5
Water Usage (Gallons)
Water
03
Gallons
2612.903226
In [23]:
dfu2.to_csv('dfu2.csv')
In [15]:
dfu3 = dfu2.groupby(
['site_id', 'service_type', 'cal_year', 'cal_mo', 'item_desc', 'units']
).sum()
dfu3 = dfu3.reset_index()
dfu3.head(10)
Out[15]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
0
03
Electricity
2005
12
Electricity charge
kWh
1904.657880
49.5
14790.748577
1
03
Electricity
2006
1
Electricity charge
kWh
5430.493797
93.0
42665.790911
2
03
Electricity
2006
2
Electricity charge
kWh
5764.406730
84.0
45010.439348
3
03
Electricity
2006
3
Electricity charge
kWh
6349.255299
93.0
46311.547557
4
03
Electricity
2006
4
Electricity charge
kWh
5529.385224
90.0
40392.812893
5
03
Electricity
2006
5
Electricity charge
kWh
5114.850768
93.0
37585.009199
6
03
Electricity
2006
6
Electricity charge
-
23.225806
36.0
0.000000
7
03
Electricity
2006
6
Electricity charge
kWh
3711.073939
54.0
26419.530303
8
03
Electricity
2006
7
Electricity charge
-
16.774194
26.0
0.000000
9
03
Electricity
2006
7
Electricity charge
kWh
2982.667470
67.0
18455.905417
In [16]:
dfu3[dfu3.service_type=='Electricity'].head(10)
Out[16]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
0
03
Electricity
2005
12
Electricity charge
kWh
1904.657880
49.5
14790.748577
1
03
Electricity
2006
1
Electricity charge
kWh
5430.493797
93.0
42665.790911
2
03
Electricity
2006
2
Electricity charge
kWh
5764.406730
84.0
45010.439348
3
03
Electricity
2006
3
Electricity charge
kWh
6349.255299
93.0
46311.547557
4
03
Electricity
2006
4
Electricity charge
kWh
5529.385224
90.0
40392.812893
5
03
Electricity
2006
5
Electricity charge
kWh
5114.850768
93.0
37585.009199
6
03
Electricity
2006
6
Electricity charge
-
23.225806
36.0
0.000000
7
03
Electricity
2006
6
Electricity charge
kWh
3711.073939
54.0
26419.530303
8
03
Electricity
2006
7
Electricity charge
-
16.774194
26.0
0.000000
9
03
Electricity
2006
7
Electricity charge
kWh
2982.667470
67.0
18455.905417
In [17]:
# Add Fiscal Year and month columns
fyr = []
fmo = []
for cyr, cmo in zip(dfu3.cal_year, dfu3.cal_mo):
fis_yr, fis_mo = bench_util.calendar_to_fiscal(cyr, cmo)
fyr.append(fis_yr)
fmo.append(fis_mo)
dfu3['fiscal_year'] = fyr
dfu3['fiscal_mo'] = fmo
dfu3.head()
Out[17]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
fiscal_year
fiscal_mo
0
03
Electricity
2005
12
Electricity charge
kWh
1904.657880
49.5
14790.748577
2006
6
1
03
Electricity
2006
1
Electricity charge
kWh
5430.493797
93.0
42665.790911
2006
7
2
03
Electricity
2006
2
Electricity charge
kWh
5764.406730
84.0
45010.439348
2006
8
3
03
Electricity
2006
3
Electricity charge
kWh
6349.255299
93.0
46311.547557
2006
9
4
03
Electricity
2006
4
Electricity charge
kWh
5529.385224
90.0
40392.812893
2006
10
In [40]:
mmbtu = []
for ix, row in dfu3.iterrows():
row_mmbtu = ut.fuel_btus_per_unit(row.service_type, row.units) * row.usage / 1e6
if np.isnan(row_mmbtu): row_mmbtu = 0.0
mmbtu.append(row_mmbtu)
dfu3['mmbtu'] = mmbtu
dfu3.head(10)
Out[40]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
fiscal_year
fiscal_mo
mmbtu
0
03
Electricity
2005
12
Electricity charge
kWh
1904.657880
49.5
14790.748577
2006
6
50.466034
1
03
Electricity
2006
1
Electricity charge
kWh
5430.493797
93.0
42665.790911
2006
7
145.575679
2
03
Electricity
2006
2
Electricity charge
kWh
5764.406730
84.0
45010.439348
2006
8
153.575619
3
03
Electricity
2006
3
Electricity charge
kWh
6349.255299
93.0
46311.547557
2006
9
158.015000
4
03
Electricity
2006
4
Electricity charge
kWh
5529.385224
90.0
40392.812893
2006
10
137.820278
5
03
Electricity
2006
5
Electricity charge
kWh
5114.850768
93.0
37585.009199
2006
11
128.240051
6
03
Electricity
2006
6
Electricity charge
-
23.225806
36.0
0.000000
2006
12
0.000000
7
03
Electricity
2006
6
Electricity charge
kWh
3711.073939
54.0
26419.530303
2006
12
90.143437
8
03
Electricity
2006
7
Electricity charge
-
16.774194
26.0
0.000000
2007
1
0.000000
9
03
Electricity
2006
7
Electricity charge
kWh
2982.667470
67.0
18455.905417
2007
1
62.971549
In [19]:
dfu3[dfu3.service_type=='Electricity'].head(10)
Out[19]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
fiscal_year
fiscal_mo
mmbtu
0
03
Electricity
2005
12
Electricity charge
kWh
1904.657880
49.5
14790.748577
2006
6
50.466034
1
03
Electricity
2006
1
Electricity charge
kWh
5430.493797
93.0
42665.790911
2006
7
145.575679
2
03
Electricity
2006
2
Electricity charge
kWh
5764.406730
84.0
45010.439348
2006
8
153.575619
3
03
Electricity
2006
3
Electricity charge
kWh
6349.255299
93.0
46311.547557
2006
9
158.015000
4
03
Electricity
2006
4
Electricity charge
kWh
5529.385224
90.0
40392.812893
2006
10
137.820278
5
03
Electricity
2006
5
Electricity charge
kWh
5114.850768
93.0
37585.009199
2006
11
128.240051
6
03
Electricity
2006
6
Electricity charge
-
23.225806
36.0
0.000000
2006
12
0.000000
7
03
Electricity
2006
6
Electricity charge
kWh
3711.073939
54.0
26419.530303
2006
12
90.143437
8
03
Electricity
2006
7
Electricity charge
-
16.774194
26.0
0.000000
2007
1
0.000000
9
03
Electricity
2006
7
Electricity charge
kWh
2982.667470
67.0
18455.905417
2007
1
62.971549
In [20]:
dfu3.to_csv('dfu3.csv')
dfu3.to_pickle('dfu3.pkl')
In [33]:
df_test = pd.pivot_table(dfu3, index='site_id', values='cost', columns='fiscal_year')
dfu3_old = pd.read_pickle('dfu3_old.pkl')
df_test_old = pd.pivot_table(dfu3_old, index='site_id', values='cost', columns='fiscal_year')
df_diff = df_test - df_test_old
df_diff.to_csv('df_diff.csv')
df_diff
Out[33]:
fiscal_year
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
site_id
03
NaN
NaN
NaN
NaN
NaN
29.033144
0.0
0.000000
0.000000
0.000000
-5.152914
446.678910
NaN
04
NaN
NaN
NaN
NaN
NaN
31.642611
0.0
0.000000
0.000000
0.000000
-19.859050
835.383678
NaN
05
NaN
NaN
NaN
NaN
NaN
98.504327
0.0
0.000000
0.000000
0.000000
3.932541
1869.011458
NaN
06
NaN
NaN
NaN
NaN
NaN
22.854131
0.0
0.000000
0.000000
0.000000
-6.026963
676.229957
NaN
07
NaN
NaN
NaN
NaN
NaN
90.041916
0.0
0.000000
0.000000
0.000000
25.288608
779.637596
NaN
08
NaN
NaN
NaN
NaN
NaN
26.022863
0.0
0.000000
0.000000
0.000000
-13.580637
598.963289
NaN
09
NaN
NaN
NaN
NaN
NaN
104.593805
0.0
0.000000
0.000000
0.000000
-6.884378
748.988652
NaN
10
NaN
NaN
NaN
NaN
NaN
117.685866
0.0
0.000000
0.000000
0.000000
-16.576713
766.081392
NaN
104
NaN
NaN
NaN
NaN
1986.776884
26.881476
0.0
0.000000
0.000000
0.000000
0.000000
770.819877
NaN
11
NaN
NaN
NaN
NaN
NaN
176.522276
0.0
0.000000
0.000000
0.000000
-38.732128
1259.936928
NaN
12
NaN
NaN
NaN
NaN
NaN
82.674942
0.0
0.000000
0.000000
0.000000
-54.671129
1086.387842
NaN
13
NaN
NaN
NaN
NaN
NaN
37.425570
0.0
0.000000
0.000000
0.000000
-75.001127
1449.024847
NaN
14
NaN
NaN
NaN
NaN
5236.788227
153.713393
0.0
0.000000
0.000000
0.000000
-158.875903
4368.351997
NaN
15
NaN
NaN
NaN
NaN
NaN
52.331830
0.0
0.000000
0.000000
0.000000
-13.969860
520.779961
NaN
15A
NaN
NaN
NaN
NaN
NaN
1.650027
0.0
0.000000
0.000000
0.000000
0.000000
106.194990
NaN
15B
NaN
NaN
NaN
NaN
NaN
2.424205
0.0
0.000000
0.000000
0.000000
0.000000
0.000000
NaN
16
NaN
NaN
NaN
NaN
NaN
-47.969641
0.0
0.000000
0.000000
0.000000
0.000000
2107.021000
NaN
20
NaN
NaN
NaN
NaN
NaN
-247.742328
0.0
0.000000
0.000000
0.000000
0.000000
2905.698152
NaN
22
NaN
NaN
NaN
NaN
NaN
107.212550
0.0
0.000000
0.000000
0.000000
-76.697089
2515.440697
NaN
23
NaN
NaN
NaN
NaN
NaN
176.904688
0.0
0.000000
0.000000
0.000000
-86.922178
2687.821929
NaN
27
NaN
NaN
NaN
NaN
NaN
118.799982
0.0
0.000000
0.000000
0.000000
-30.933822
1980.562746
NaN
28
NaN
NaN
NaN
NaN
NaN
45.250267
0.0
0.000000
0.000000
0.000000
-59.115312
2804.275647
NaN
29
NaN
NaN
NaN
NaN
NaN
52.499713
0.0
0.000000
0.000000
0.000000
-29.125455
1399.987654
NaN
34
NaN
NaN
NaN
NaN
NaN
116.753330
0.0
0.000000
0.000000
0.000000
-25.998855
496.878869
NaN
36
NaN
NaN
NaN
NaN
NaN
83.294871
0.0
0.000000
0.000000
0.000000
-16.524677
830.856946
NaN
37
NaN
NaN
NaN
NaN
NaN
-175.474301
0.0
0.000000
0.000000
0.000000
-11.451279
441.432477
NaN
38
NaN
NaN
NaN
NaN
NaN
-239.644352
0.0
0.000000
0.000000
0.000000
-47.733358
703.382717
NaN
39
NaN
NaN
NaN
NaN
NaN
100.507774
0.0
0.000000
0.000000
0.000000
-76.948185
1071.924534
NaN
40
NaN
NaN
NaN
NaN
NaN
48.681714
0.0
0.000000
0.000000
0.000000
-3.273744
517.446076
NaN
42
NaN
NaN
NaN
NaN
NaN
31.359610
0.0
0.000000
0.000000
0.000000
-28.889673
980.098618
NaN
...
...
...
...
...
...
...
...
...
...
...
...
...
...
NPP001
NaN
NaN
NaN
NaN
NaN
0.290404
0.0
0.000000
0.000000
0.000000
0.000000
5.137009
NaN
NRP001
NaN
NaN
NaN
NaN
NaN
0.507245
0.0
0.000000
0.000000
0.000000
0.000000
3.954014
NaN
NWLBG1
NaN
NaN
NaN
1877.031710
1305.545640
42.607410
0.0
0.000000
0.000000
0.000000
32.908742
592.473200
NaN
NWLP01
NaN
NaN
NaN
NaN
NaN
111.002692
0.0
-137.774402
-334.926330
0.000000
-160.643756
0.000000
NaN
NWP001
NaN
NaN
NaN
NaN
NaN
1.432133
0.0
0.000000
0.000000
0.000000
0.000000
3.021886
NaN
PRW
NaN
NaN
NaN
NaN
547.713977
34.209440
0.0
0.000000
0.000000
0.000000
0.000000
331.414550
526.331346
SF001
NaN
NaN
NaN
NaN
49.772552
0.000000
0.0
-20.680408
-122.118243
-0.190073
-7.183509
0.000000
NaN
SHW001
NaN
NaN
NaN
NaN
NaN
-5.097401
0.0
0.000000
0.000000
0.000000
0.000000
67.335003
NaN
STRBG1
NaN
NaN
NaN
NaN
NaN
0.844463
0.0
0.000000
0.000000
0.000000
0.000000
10.373301
NaN
TRANS01
NaN
NaN
NaN
NaN
NaN
-5.387056
0.0
0.000000
0.000000
0.000000
0.000000
19.925716
NaN
TRANS02
NaN
NaN
NaN
NaN
NaN
1.199857
0.0
0.000000
0.000000
0.000000
0.000000
18.502179
NaN
TRANS03
NaN
NaN
NaN
NaN
NaN
1.693992
0.0
0.000000
0.000000
0.000000
0.000000
8.752391
NaN
TRANS04
NaN
NaN
NaN
NaN
NaN
1.859870
0.0
0.000000
0.000000
0.000000
0.000000
11.626445
NaN
TRANS05
NaN
NaN
NaN
NaN
NaN
-2.751040
0.0
0.000000
0.000000
0.000000
0.000000
33.098438
NaN
TRANS06
NaN
NaN
NaN
NaN
NaN
-17.999350
0.0
0.000000
0.000000
0.000000
0.000000
68.774666
NaN
TRANS07
NaN
NaN
NaN
NaN
NaN
-3.094363
0.0
0.000000
0.000000
0.000000
0.000000
17.691369
NaN
TRANS08
NaN
NaN
NaN
NaN
NaN
-3.344157
0.0
0.000000
0.000000
0.000000
0.000000
32.518211
NaN
TRANS09
NaN
NaN
NaN
NaN
NaN
0.371250
0.0
0.000000
0.000000
0.000000
0.000000
10.436201
NaN
TRANS10
NaN
NaN
NaN
NaN
NaN
0.649369
0.0
0.000000
0.000000
0.000000
0.000000
20.719566
NaN
TRGR
NaN
NaN
NaN
1294.035706
1299.482372
6.366386
0.0
0.000000
0.000000
0.000000
0.000000
-339.377875
NaN
TRPAIR
NaN
NaN
NaN
NaN
NaN
-0.165118
0.0
0.000000
NaN
NaN
NaN
NaN
NaN
TRPBG1
NaN
NaN
NaN
NaN
NaN
13.874854
0.0
0.000000
0.000000
0.000000
-9.436486
392.584789
NaN
TRS001
NaN
NaN
NaN
NaN
NaN
2.157187
NaN
NaN
NaN
NaN
NaN
NaN
NaN
TWOCOM
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
VMP001
NaN
NaN
NaN
NaN
NaN
-6.506939
0.0
-17.759672
-28.456307
0.000000
-20.205737
-4.259091
NaN
WF001
NaN
NaN
NaN
NaN
NaN
69.993132
0.0
-47.354834
-95.363351
0.000000
-18.699704
0.000000
NaN
WSPEMR
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
WSPGAR
NaN
NaN
NaN
NaN
58.964434
0.000000
0.0
-10.732155
-66.295752
0.000000
0.000000
7.872848
NaN
WSPP01
NaN
NaN
NaN
NaN
NaN
10.581647
0.0
-18.345027
-57.265927
0.000000
-55.430536
0.000000
NaN
WSPSWP
NaN
NaN
NaN
NaN
NaN
-3.379928
0.0
0.000000
0.000000
0.000000
0.000000
439.562095
NaN
137 rows × 13 columns
In [41]:
dfu3.query("site_id=='13' and fiscal_year==2016 and fiscal_mo==1")
Out[41]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
fiscal_year
fiscal_mo
mmbtu
10799
13
Electricity
2015
7
Electricity charge
kWh
4668.356356
31.0
18638.004032
2016
1
63.59287
11076
13
Refuse
2015
7
Other Charge
-
133.754194
31.0
NaN
2016
1
0.00000
11204
13
Sewer
2015
7
Other Charge
-
411.637923
31.0
NaN
2016
1
0.00000
11464
13
Water
2015
7
Other Charge
-
190.007838
31.0
NaN
2016
1
0.00000
11465
13
Water
2015
7
Water Usage (Gallons)
Gallons
386.452288
31.0
29310.554435
2016
1
0.00000
In [42]:
dfu3_old.query("site_id=='13' and fiscal_year==2016 and fiscal_mo==1")
Out[42]:
site_id
service_type
cal_year
cal_mo
item_desc
units
cost
days_served
usage
fiscal_year
fiscal_mo
mmbtu
6211
13
Electricity
2015
7
Electricity charge
kWh
4668.356356
31.0
18638.004032
2016
1
63.59287
6345
13
Refuse
2015
7
Other Charge
-
133.754194
31.0
NaN
2016
1
NaN
6413
13
Sewer
2015
7
Other Charge
-
411.637923
31.0
NaN
2016
1
NaN
6553
13
Water
2015
7
Other Charge
-
190.007838
31.0
NaN
2016
1
NaN
6554
13
Water
2015
7
Water Usage (Gallons)
Gallons
386.452288
31.0
29310.554435
2016
1
0.00000
In [21]:
bench_util.months_present(dfu3)
Out[21]:
[(2006, 2),
(2006, 3),
(2006, 4),
(2006, 5),
(2006, 6),
(2006, 7),
(2006, 8),
(2006, 9),
(2006, 10),
(2006, 11),
(2006, 12),
(2007, 1),
(2007, 2),
(2007, 3),
(2007, 4),
(2007, 5),
(2007, 6),
(2007, 7),
(2007, 8),
(2007, 9),
(2007, 10),
(2007, 11),
(2007, 12),
(2008, 1),
(2008, 2),
(2008, 3),
(2008, 4),
(2008, 5),
(2008, 6),
(2008, 7),
(2008, 8),
(2008, 9),
(2008, 10),
(2008, 11),
(2008, 12),
(2009, 1),
(2009, 2),
(2009, 3),
(2009, 4),
(2009, 5),
(2009, 6),
(2009, 7),
(2009, 8),
(2009, 9),
(2009, 10),
(2009, 11),
(2009, 12),
(2010, 1),
(2010, 2),
(2010, 3),
(2010, 4),
(2010, 5),
(2010, 6),
(2010, 7),
(2010, 8),
(2010, 9),
(2010, 10),
(2010, 11),
(2010, 12),
(2011, 1),
(2011, 2),
(2011, 3),
(2011, 4),
(2011, 5),
(2011, 6),
(2011, 7),
(2011, 8),
(2011, 9),
(2011, 10),
(2011, 11),
(2011, 12),
(2012, 1),
(2012, 2),
(2012, 3),
(2012, 4),
(2012, 5),
(2012, 6),
(2012, 7),
(2012, 8),
(2012, 9),
(2012, 10),
(2012, 11),
(2012, 12),
(2013, 1),
(2013, 2),
(2013, 3),
(2013, 4),
(2013, 5),
(2013, 6),
(2013, 7),
(2013, 8),
(2013, 9),
(2013, 10),
(2013, 11),
(2013, 12),
(2014, 1),
(2014, 2),
(2014, 3),
(2014, 4),
(2014, 5),
(2014, 6),
(2014, 7),
(2014, 8),
(2014, 9),
(2014, 10),
(2014, 11),
(2014, 12),
(2015, 1),
(2015, 2),
(2015, 3),
(2015, 4),
(2015, 5),
(2015, 6),
(2015, 7),
(2015, 8),
(2015, 9),
(2015, 10),
(2015, 11),
(2015, 12),
(2016, 1),
(2016, 2),
(2016, 3),
(2016, 4),
(2016, 5),
(2016, 6),
(2016, 7),
(2016, 8),
(2016, 9),
(2016, 10),
(2016, 11),
(2016, 12),
(2017, 1),
(2017, 2),
(2017, 3),
(2017, 4),
(2017, 5),
(2017, 6),
(2017, 7),
(2017, 8),
(2017, 9),
(2017, 10),
(2017, 11),
(2017, 12),
(2018, 1),
(2018, 2),
(2018, 3),
(2018, 4),
(2018, 5),
(2018, 6)]
In [22]:
bench_util.months_present(dfu3, 'cal_year', 'cal_mo')[-5:]
Out[22]:
[(2017, 8), (2017, 9), (2017, 10), (2017, 11), (2017, 12)]
In [3]:
import io
import requests
resp = requests.get('http://ahfc.webfactional.com/data/degree_days.pkl').content
df_dd = pd.read_pickle(io.BytesIO(resp), compression='bz2')
df_dd.tail()
Out[3]:
month
hdd60
hdd65
station
PFYU
2017-12-01
1837.5
1992.5
PFYU
2018-01-01
2139.3
2294.3
PFYU
2018-02-01
1904.8
2044.8
PFYU
2018-03-01
1566.3
1721.1
PFYU
2018-04-01
1111.2
1261.2
In [10]:
df_dd.query('station=="CYDA" and month=="2008-01-01"')
Out[10]:
month
hdd60
hdd65
station
CYDA
2008-01-01
2367.0
2521.8
In [12]:
df_dd.loc['PAFA'].tail(36)
Out[12]:
month
hdd60
hdd65
station
PAFA
2015-05-01
193.3
297.9
PAFA
2015-06-01
117.6
208.5
PAFA
2015-07-01
65.2
150.8
PAFA
2015-08-01
220.7
348.6
PAFA
2015-09-01
538.7
683.2
PAFA
2015-10-01
891.7
1046.7
PAFA
2015-11-01
1498.9
1649.1
PAFA
2015-12-01
1903.1
2058.1
PAFA
2016-01-01
1747.5
1902.5
PAFA
2016-02-01
1544.2
1689.2
PAFA
2016-03-01
1235.7
1390.5
PAFA
2016-04-01
542.8
689.4
PAFA
2016-05-01
241.3
367.4
PAFA
2016-06-01
100.4
196.8
PAFA
2016-07-01
45.4
134.5
PAFA
2016-08-01
74.5
169.4
PAFA
2016-09-01
423.5
568.0
PAFA
2016-10-01
1076.9
1231.8
PAFA
2016-11-01
1674.9
1825.1
PAFA
2016-12-01
2090.2
2245.2
PAFA
2017-01-01
2147.5
2302.5
PAFA
2017-02-01
1656.7
1796.7
PAFA
2017-03-01
1929.3
2084.1
PAFA
2017-04-01
712.9
862.9
PAFA
2017-05-01
305.8
447.6
PAFA
2017-06-01
68.2
135.4
PAFA
2017-07-01
22.7
86.2
PAFA
2017-08-01
132.6
248.2
PAFA
2017-09-01
379.8
523.5
PAFA
2017-10-01
889.1
1044.1
PAFA
2017-11-01
1602.0
1752.2
PAFA
2017-12-01
1557.9
1712.9
PAFA
2018-01-01
2044.9
2199.9
PAFA
2018-02-01
1592.6
1732.6
PAFA
2018-03-01
1338.9
1493.7
PAFA
2018-04-01
837.0
987.0
In [4]:
_dd = {}
for ix, row in df_dd.iterrows():
f_yr, f_mo = bench_util.calendar_to_fiscal(row.month.year, row.month.month)
_dd[(f_yr, f_mo, ix)] = row.hdd65
In [6]:
_dd
Out[6]:
{(2008, 7, 'CYDA'): 2521.8,
(2008, 8, 'CYDA'): 2279.4,
(2008, 9, 'CYDA'): 1715.7,
(2008, 10, 'CYDA'): 974.4,
(2008, 11, 'CYDA'): 499.2,
(2008, 12, 'CYDA'): 249.7,
(2009, 1, 'CYDA'): 292.9,
(2009, 2, 'CYDA'): 441.2,
(2009, 3, 'CYDA'): 686.8,
(2009, 4, 'CYDA'): 1374.3,
(2009, 5, 'CYDA'): 1774.0,
(2009, 6, 'CYDA'): 2667.3,
(2009, 7, 'CYDA'): 2679.7,
(2009, 8, 'CYDA'): 2130.5,
(2009, 9, 'CYDA'): 1980.8,
(2009, 10, 'CYDA'): 1002.7,
(2009, 11, 'CYDA'): 533.9,
(2009, 12, 'CYDA'): 272.5,
(2010, 1, 'CYDA'): 208.9,
(2010, 2, 'CYDA'): 367.4,
(2010, 3, 'CYDA'): 620.7,
(2010, 4, 'CYDA'): 1154.9,
(2010, 5, 'CYDA'): 1922.5,
(2010, 6, 'CYDA'): 2093.6,
(2010, 7, 'CYDA'): 2293.0,
(2010, 8, 'CYDA'): 1822.8,
(2010, 9, 'CYDA'): 1525.7,
(2010, 10, 'CYDA'): 816.6,
(2010, 11, 'CYDA'): 485.3,
(2010, 12, 'CYDA'): 250.1,
(2011, 1, 'CYDA'): 210.3,
(2011, 2, 'CYDA'): 335.3,
(2011, 3, 'CYDA'): 714.0,
(2011, 4, 'CYDA'): 1191.1,
(2011, 5, 'CYDA'): 1630.1,
(2011, 6, 'CYDA'): 2520.6,
(2011, 7, 'CYDA'): 2556.0,
(2011, 8, 'CYDA'): 2111.1,
(2011, 9, 'CYDA'): 2042.6,
(2011, 10, 'CYDA'): 1011.2,
(2011, 11, 'CYDA'): 493.9,
(2011, 12, 'CYDA'): 266.8,
(2012, 1, 'CYDA'): 212.1,
(2012, 2, 'CYDA'): 390.6,
(2012, 3, 'CYDA'): 609.8,
(2012, 4, 'CYDA'): 1135.3,
(2012, 5, 'CYDA'): 2157.8,
(2012, 6, 'CYDA'): 2041.3,
(2012, 7, 'CYDA'): 2710.4,
(2012, 8, 'CYDA'): 1713.2,
(2012, 9, 'CYDA'): 1816.5,
(2012, 10, 'CYDA'): 896.0,
(2012, 11, 'CYDA'): 559.4,
(2012, 12, 'CYDA'): 226.8,
(2013, 1, 'CYDA'): 225.9,
(2013, 2, 'CYDA'): 365.1,
(2013, 3, 'CYDA'): 590.6,
(2013, 4, 'CYDA'): 1505.4,
(2013, 5, 'CYDA'): 2416.1,
(2013, 6, 'CYDA'): 2762.1,
(2013, 7, 'CYDA'): 2368.5,
(2013, 8, 'CYDA'): 1789.4,
(2013, 9, 'CYDA'): 1915.1,
(2013, 10, 'CYDA'): 1381.8,
(2013, 11, 'CYDA'): 654.3,
(2013, 12, 'CYDA'): 198.1,
(2014, 1, 'CYDA'): 176.9,
(2014, 2, 'CYDA'): 297.7,
(2014, 3, 'CYDA'): 665.7,
(2014, 4, 'CYDA'): 1080.0,
(2014, 5, 'CYDA'): 2067.4,
(2014, 6, 'CYDA'): 2596.7,
(2014, 7, 'CYDA'): 1921.2,
(2014, 8, 'CYDA'): 2298.2,
(2014, 9, 'CYDA'): 1883.7,
(2014, 10, 'CYDA'): 1002.8,
(2014, 11, 'CYDA'): 462.2,
(2014, 12, 'CYDA'): 285.1,
(2015, 1, 'CYDA'): 213.7,
(2015, 2, 'CYDA'): 338.7,
(2015, 3, 'CYDA'): 678.7,
(2015, 4, 'CYDA'): 1186.8,
(2015, 5, 'CYDA'): 1827.9,
(2015, 6, 'CYDA'): 1953.7,
(2015, 7, 'CYDA'): 2314.9,
(2015, 8, 'CYDA'): 1975.3,
(2015, 9, 'CYDA'): 1619.9,
(2015, 10, 'CYDA'): 865.0,
(2015, 11, 'CYDA'): 378.9,
(2015, 12, 'CYDA'): 277.4,
(2016, 1, 'CYDA'): 242.1,
(2016, 2, 'CYDA'): 411.3,
(2016, 3, 'CYDA'): 697.6,
(2016, 4, 'CYDA'): 1058.6,
(2016, 5, 'CYDA'): 1798.5,
(2016, 6, 'CYDA'): 1947.3,
(2016, 7, 'CYDA'): 1872.0,
(2016, 8, 'CYDA'): 1755.7,
(2016, 9, 'CYDA'): 1348.3,
(2016, 10, 'CYDA'): 748.8,
(2016, 11, 'CYDA'): 457.0,
(2016, 12, 'CYDA'): 245.5,
(2017, 1, 'CYDA'): 181.5,
(2017, 2, 'CYDA'): 289.4,
(2017, 3, 'CYDA'): 660.3,
(2017, 4, 'CYDA'): 1482.0,
(2017, 5, 'CYDA'): 1835.9,
(2017, 6, 'CYDA'): 2424.7,
(2017, 7, 'CYDA'): 2409.3,
(2017, 8, 'CYDA'): 2037.7,
(2017, 9, 'CYDA'): 2124.3,
(2017, 10, 'CYDA'): 955.3,
(2017, 11, 'CYDA'): 490.8,
(2017, 12, 'CYDA'): 244.0,
(2018, 1, 'CYDA'): 166.4,
(2018, 2, 'CYDA'): 306.4,
(2018, 3, 'CYDA'): 558.7,
(2018, 4, 'CYDA'): 1129.6,
(2018, 5, 'CYDA'): 2268.7,
(2018, 6, 'CYDA'): 2136.5,
(2018, 7, 'CYDA'): 2302.3,
(2018, 8, 'CYDA'): 2248.7,
(2018, 9, 'CYDA'): 1616.9,
(2018, 10, 'CYDA'): 1065.6,
(2008, 7, 'CZST'): 1199.4,
(2008, 8, 'CZST'): 1045.8,
(2008, 9, 'CZST'): 901.2,
(2008, 10, 'CZST'): 737.9,
(2008, 11, 'CZST'): 469.7,
(2008, 12, 'CZST'): 328.6,
(2009, 1, 'CZST'): 280.8,
(2009, 2, 'CZST'): 284.7,
(2009, 3, 'CZST'): 375.8,
(2009, 4, 'CZST'): 732.0,
(2009, 5, 'CZST'): 846.9,
(2009, 6, 'CZST'): 1322.0,
(2009, 7, 'CZST'): 1247.3,
(2009, 8, 'CZST'): 1120.1,
(2009, 9, 'CZST'): 1062.3,
(2009, 10, 'CZST'): 757.5,
(2009, 11, 'CZST'): 500.5,
(2009, 12, 'CZST'): 283.5,
(2010, 1, 'CZST'): 187.3,
(2010, 2, 'CZST'): 238.5,
(2010, 3, 'CZST'): 399.4,
(2010, 4, 'CZST'): 662.4,
(2010, 5, 'CZST'): 919.4,
(2010, 6, 'CZST'): 1321.1,
(2010, 7, 'CZST'): 1010.5,
(2010, 8, 'CZST'): 817.1,
(2010, 9, 'CZST'): 819.9,
(2010, 10, 'CZST'): 588.1,
(2010, 11, 'CZST'): 377.4,
(2010, 12, 'CZST'): 297.8,
(2011, 1, 'CZST'): 231.4,
(2011, 2, 'CZST'): 247.5,
(2011, 3, 'CZST'): 394.5,
(2011, 4, 'CZST'): 653.0,
(2011, 5, 'CZST'): 958.4,
(2011, 6, 'CZST'): 1130.3,
(2011, 7, 'CZST'): 1150.9,
(2011, 8, 'CZST'): 1099.2,
(2011, 9, 'CZST'): 958.2,
(2011, 10, 'CZST'): 683.5,
(2011, 11, 'CZST'): 446.5,
(2011, 12, 'CZST'): 271.9,
(2012, 1, 'CZST'): 277.6,
(2012, 2, 'CZST'): 308.8,
(2012, 3, 'CZST'): 412.7,
(2012, 4, 'CZST'): 677.5,
(2012, 5, 'CZST'): 991.1,
(2012, 6, 'CZST'): 1081.3,
(2012, 7, 'CZST'): 1225.7,
(2012, 8, 'CZST'): 939.2,
(2012, 9, 'CZST'): 926.9,
(2012, 10, 'CZST'): 684.3,
(2012, 11, 'CZST'): 533.4,
(2012, 12, 'CZST'): 350.1,
(2013, 1, 'CZST'): 245.4,
(2013, 2, 'CZST'): 251.0,
(2013, 3, 'CZST'): 393.8,
(2013, 4, 'CZST'): 761.7,
(2013, 5, 'CZST'): 919.6,
(2013, 6, 'CZST'): 1169.1,
(2013, 7, 'CZST'): 1070.5,
(2013, 8, 'CZST'): 865.6,
(2013, 9, 'CZST'): 907.6,
(2013, 10, 'CZST'): 681.6,
(2013, 11, 'CZST'): 408.0,
(2013, 12, 'CZST'): 219.6,
(2014, 1, 'CZST'): 197.4,
(2014, 2, 'CZST'): 208.0,
(2014, 3, 'CZST'): 352.8,
(2014, 4, 'CZST'): 590.5,
(2014, 5, 'CZST'): 969.2,
(2014, 6, 'CZST'): 1133.5,
(2014, 7, 'CZST'): 1009.2,
(2014, 8, 'CZST'): 1124.2,
(2014, 9, 'CZST'): 990.5,
(2014, 10, 'CZST'): 699.7,
(2014, 11, 'CZST'): 371.9,
(2014, 12, 'CZST'): 286.4,
(2015, 1, 'CZST'): 201.5,
(2015, 2, 'CZST'): 239.8,
(2015, 3, 'CZST'): 331.3,
(2015, 4, 'CZST'): 608.0,
(2015, 5, 'CZST'): 936.5,
(2015, 6, 'CZST'): 1050.0,
(2015, 7, 'CZST'): 1040.8,
(2015, 8, 'CZST'): 882.8,
(2015, 9, 'CZST'): 808.5,
(2015, 10, 'CZST'): 641.3,
(2015, 11, 'CZST'): 287.5,
(2015, 12, 'CZST'): 218.1,
(2016, 1, 'CZST'): 206.8,
(2016, 2, 'CZST'): 263.4,
(2016, 3, 'CZST'): 424.1,
(2016, 4, 'CZST'): 600.2,
(2016, 5, 'CZST'): 914.4,
(2016, 6, 'CZST'): 1230.2,
(2016, 7, 'CZST'): 1076.7,
(2016, 8, 'CZST'): 861.7,
(2016, 9, 'CZST'): 735.2,
(2016, 10, 'CZST'): 510.8,
(2016, 11, 'CZST'): 362.1,
(2016, 12, 'CZST'): 225.8,
(2017, 1, 'CZST'): 182.9,
(2017, 2, 'CZST'): 179.1,
(2017, 3, 'CZST'): 394.5,
(2017, 4, 'CZST'): 649.1,
(2017, 5, 'CZST'): 834.6,
(2017, 6, 'CZST'): 1306.5,
(2017, 7, 'CZST'): 1204.8,
(2017, 8, 'CZST'): 1064.7,
(2017, 9, 'CZST'): 1009.1,
(2017, 10, 'CZST'): 572.2,
(2017, 11, 'CZST'): 412.2,
(2017, 12, 'CZST'): 305.0,
(2018, 1, 'CZST'): 251.9,
(2018, 2, 'CZST'): 265.6,
(2018, 3, 'CZST'): 361.1,
(2018, 4, 'CZST'): 729.2,
(2018, 5, 'CZST'): 996.3,
(2018, 6, 'CZST'): 1228.8,
(2018, 7, 'CZST'): 1143.5,
(2018, 8, 'CZST'): 1164.5,
(2018, 9, 'CZST'): 960.4,
(2018, 10, 'CZST'): 658.2,
(2004, 7, 'PAAQ'): 1828.7,
(2004, 8, 'PAAQ'): 1098.9,
(2004, 9, 'PAAQ'): 1254.4,
(2004, 10, 'PAAQ'): 759.3,
(2004, 11, 'PAAQ'): 404.3,
(2004, 12, 'PAAQ'): 219.8,
(2005, 1, 'PAAQ'): 155.7,
(2005, 2, 'PAAQ'): 193.8,
(2005, 3, 'PAAQ'): 639.8,
(2005, 4, 'PAAQ'): 871.8,
(2005, 5, 'PAAQ'): 1134.5,
(2005, 6, 'PAAQ'): 1315.1,
(2005, 7, 'PAAQ'): 1466.7,
(2005, 8, 'PAAQ'): 1237.6,
(2005, 9, 'PAAQ'): 1028.1,
(2005, 10, 'PAAQ'): 697.2,
(2005, 11, 'PAAQ'): 405.6,
(2005, 12, 'PAAQ'): 246.0,
(2006, 1, 'PAAQ'): 196.4,
(2006, 2, 'PAAQ'): 269.9,
(2006, 3, 'PAAQ'): 455.8,
(2006, 4, 'PAAQ'): 919.7,
(2006, 5, 'PAAQ'): 1551.7,
(2006, 6, 'PAAQ'): 1188.1,
(2006, 7, 'PAAQ'): 1768.7,
(2006, 8, 'PAAQ'): 1207.1,
(2006, 9, 'PAAQ'): 1313.9,
(2006, 10, 'PAAQ'): 845.1,
(2006, 11, 'PAAQ'): 487.4,
(2006, 12, 'PAAQ'): 306.3,
(2007, 1, 'PAAQ'): 228.3,
(2007, 2, 'PAAQ'): 362.1,
(2007, 3, 'PAAQ'): 463.3,
(2007, 4, 'PAAQ'): 816.1,
(2007, 5, 'PAAQ'): 1676.7,
(2007, 6, 'PAAQ'): 1367.6,
(2007, 7, 'PAAQ'): 1505.8,
(2007, 8, 'PAAQ'): 1396.0,
(2007, 9, 'PAAQ'): 1646.2,
(2007, 10, 'PAAQ'): 746.8,
(2007, 11, 'PAAQ'): 504.8,
(2007, 12, 'PAAQ'): 281.7,
(2008, 1, 'PAAQ'): 232.0,
(2008, 2, 'PAAQ'): 241.7,
(2008, 3, 'PAAQ'): 466.6,
(2008, 4, 'PAAQ'): 946.5,
(2008, 5, 'PAAQ'): 1035.2,
(2008, 6, 'PAAQ'): 1437.2,
(2008, 7, 'PAAQ'): 1657.3,
(2008, 8, 'PAAQ'): 1424.4,
(2008, 9, 'PAAQ'): 1015.1,
(2008, 10, 'PAAQ'): 889.7,
(2008, 11, 'PAAQ'): 526.9,
(2008, 12, 'PAAQ'): 357.6,
(2009, 1, 'PAAQ'): 313.9,
(2009, 2, 'PAAQ'): 331.2,
(2009, 3, 'PAAQ'): 513.6,
(2009, 4, 'PAAQ'): 1133.4,
(2009, 5, 'PAAQ'): 1350.0,
(2009, 6, 'PAAQ'): 1663.5,
(2009, 7, 'PAAQ'): 1661.8,
(2009, 8, 'PAAQ'): 1400.1,
(2009, 9, 'PAAQ'): 1340.3,
(2009, 10, 'PAAQ'): 823.4,
(2009, 11, 'PAAQ'): 445.2,
(2009, 12, 'PAAQ'): 316.2,
(2010, 1, 'PAAQ'): 170.7,
(2010, 2, 'PAAQ'): 320.4,
(2010, 3, 'PAAQ'): 506.8,
(2010, 4, 'PAAQ'): 761.3,
(2010, 5, 'PAAQ'): 1386.9,
(2010, 6, 'PAAQ'): 1440.8,
(2010, 7, 'PAAQ'): 1536.3,
(2010, 8, 'PAAQ'): 1061.6,
(2010, 9, 'PAAQ'): 1162.4,
(2010, 10, 'PAAQ'): 797.1,
(2010, 11, 'PAAQ'): 455.8,
(2010, 12, 'PAAQ'): 327.9,
(2011, 1, 'PAAQ'): 284.6,
(2011, 2, 'PAAQ'): 287.9,
(2011, 3, 'PAAQ'): 492.3,
(2011, 4, 'PAAQ'): 875.0,
(2011, 5, 'PAAQ'): 1174.1,
(2011, 6, 'PAAQ'): 1761.1,
(2011, 7, 'PAAQ'): 1408.4,
(2011, 8, 'PAAQ'): 1373.0,
(2011, 9, 'PAAQ'): 1227.7,
(2011, 10, 'PAAQ'): 771.7,
(2011, 11, 'PAAQ'): 476.1,
(2011, 12, 'PAAQ'): 311.4,
(2012, 1, 'PAAQ'): 243.2,
(2012, 2, 'PAAQ'): 331.4,
(2012, 3, 'PAAQ'): 508.4,
(2012, 4, 'PAAQ'): 890.3,
(2012, 5, 'PAAQ'): 1564.8,
(2012, 6, 'PAAQ'): 1321.7,
(2012, 7, 'PAAQ'): 1988.2,
(2012, 8, 'PAAQ'): 1130.4,
(2012, 9, 'PAAQ'): 1429.0,
(2012, 10, 'PAAQ'): 753.0,
(2012, 11, 'PAAQ'): 586.3,
(2012, 12, 'PAAQ'): 327.1,
(2013, 1, 'PAAQ'): 287.6,
(2013, 2, 'PAAQ'): 308.0,
(2013, 3, 'PAAQ'): 511.6,
(2013, 4, 'PAAQ'): 999.0,
(2013, 5, 'PAAQ'): 1474.7,
(2013, 6, 'PAAQ'): 1561.0,
(2013, 7, 'PAAQ'): 1316.4,
(2013, 8, 'PAAQ'): 1104.9,
(2013, 9, 'PAAQ'): 1253.4,
(2013, 10, 'PAAQ'): 1120.8,
(2013, 11, 'PAAQ'): 599.9,
(2013, 12, 'PAAQ'): 216.0,
(2014, 1, 'PAAQ'): 175.8,
(2014, 2, 'PAAQ'): 284.9,
(2014, 3, 'PAAQ'): 551.0,
(2014, 4, 'PAAQ'): 675.1,
(2014, 5, 'PAAQ'): 1377.4,
(2014, 6, 'PAAQ'): 1631.3,
(2014, 7, 'PAAQ'): 1024.5,
(2014, 8, 'PAAQ'): 1321.4,
(2014, 9, 'PAAQ'): 1175.0,
(2014, 10, 'PAAQ'): 779.1,
(2014, 11, 'PAAQ'): 368.8,
(2014, 12, 'PAAQ'): 349.7,
(2015, 1, 'PAAQ'): 215.8,
(2015, 2, 'PAAQ'): 268.0,
(2015, 3, 'PAAQ'): 498.3,
(2015, 4, 'PAAQ'): 1054.0,
(2015, 5, 'PAAQ'): 1034.3,
(2015, 6, 'PAAQ'): 1178.5,
(2015, 7, 'PAAQ'): 1457.5,
(2015, 8, 'PAAQ'): 1181.9,
(2015, 9, 'PAAQ'): 1098.1,
(2015, 10, 'PAAQ'): 742.1,
(2015, 11, 'PAAQ'): 404.3,
(2015, 12, 'PAAQ'): 242.4,
(2016, 1, 'PAAQ'): 192.4,
(2016, 2, 'PAAQ'): 299.5,
(2016, 3, 'PAAQ'): 588.7,
(2016, 4, 'PAAQ'): 744.5,
(2016, 5, 'PAAQ'): 1240.7,
(2016, 6, 'PAAQ'): 1365.6,
(2016, 7, 'PAAQ'): 1152.6,
(2016, 8, 'PAAQ'): 966.2,
(2016, 9, 'PAAQ'): 931.1,
(2016, 10, 'PAAQ'): 605.2,
(2016, 11, 'PAAQ'): 389.8,
(2016, 12, 'PAAQ'): 233.8,
(2017, 1, 'PAAQ'): 165.1,
(2017, 2, 'PAAQ'): 222.1,
(2017, 3, 'PAAQ'): 479.6,
(2017, 4, 'PAAQ'): 934.1,
(2017, 5, 'PAAQ'): 1233.6,
(2017, 6, 'PAAQ'): 1595.7,
(2017, 7, 'PAAQ'): 1732.1,
(2017, 8, 'PAAQ'): 1320.6,
(2017, 9, 'PAAQ'): 1454.5,
(2017, 10, 'PAAQ'): 693.7,
(2017, 11, 'PAAQ'): 506.0,
(2017, 12, 'PAAQ'): 283.3,
(2018, 1, 'PAAQ'): 201.5,
(2018, 2, 'PAAQ'): 304.2,
(2018, 3, 'PAAQ'): 463.7,
(2018, 4, 'PAAQ'): 846.6,
(2018, 5, 'PAAQ'): 1351.9,
(2018, 6, 'PAAQ'): 1203.7,
(2018, 7, 'PAAQ'): 1416.5,
(2018, 8, 'PAAQ'): 1348.5,
(2018, 9, 'PAAQ'): 1196.8,
(2018, 10, 'PAAQ'): 758.6,
(2008, 7, 'PABE'): 1863.2,
(2008, 8, 'PABE'): 1905.2,
(2008, 9, 'PABE'): 1623.8,
(2008, 10, 'PABE'): 1269.9,
(2008, 11, 'PABE'): 713.5,
(2008, 12, 'PABE'): 428.5,
(2009, 1, 'PABE'): 394.9,
(2009, 2, 'PABE'): 351.5,
(2009, 3, 'PABE'): 541.4,
(2009, 4, 'PABE'): 1351.7,
(2009, 5, 'PABE'): 1733.2,
(2009, 6, 'PABE'): 1559.1,
(2009, 7, 'PABE'): 1896.2,
(2009, 8, 'PABE'): 1488.0,
(2009, 9, 'PABE'): 1656.7,
(2009, 10, 'PABE'): 1241.1,
(2009, 11, 'PABE'): 723.5,
(2009, 12, 'PABE'): 418.2,
(2010, 1, 'PABE'): 302.9,
(2010, 2, 'PABE'): 407.7,
(2010, 3, 'PABE'): 571.4,
(2010, 4, 'PABE'): 971.0,
(2010, 5, 'PABE'): 1674.8,
(2010, 6, 'PABE'): 1471.7,
(2010, 7, 'PABE'): 1947.7,
(2010, 8, 'PABE'): 1493.1,
(2010, 9, 'PABE'): 1900.0,
(2010, 10, 'PABE'): 1211.6,
(2010, 11, 'PABE'): 660.1,
(2010, 12, 'PABE'): 431.7,
(2011, 1, 'PABE'): 377.0,
(2011, 2, 'PABE'): 389.0,
(2011, 3, 'PABE'): 538.3,
(2011, 4, 'PABE'): 1037.0,
(2011, 5, 'PABE'): 1335.8,
(2011, 6, 'PABE'): 1949.8,
(2011, 7, 'PABE'): 1642.8,
(2011, 8, 'PABE'): 1488.6,
(2011, 9, 'PABE'): 1629.9,
(2011, 10, 'PABE'): 1272.7,
(2011, 11, 'PABE'): 639.1,
(2011, 12, 'PABE'): 419.5,
(2012, 1, 'PABE'): 441.7,
(2012, 2, 'PABE'): 439.0,
(2012, 3, 'PABE'): 567.0,
(2012, 4, 'PABE'): 1037.2,
(2012, 5, 'PABE'): 1720.3,
(2012, 6, 'PABE'): 1648.5,
(2012, 7, 'PABE'): 2544.4,
(2012, 8, 'PABE'): 1444.1,
(2012, 9, 'PABE'): 1929.3,
(2012, 10, 'PABE'): 1187.3,
(2012, 11, 'PABE'): 805.8,
(2012, 12, 'PABE'): 439.1,
(2013, 1, 'PABE'): 416.8,
(2013, 2, 'PABE'): 401.7,
(2013, 3, 'PABE'): 679.3,
(2013, 4, 'PABE'): 1055.9,
(2013, 5, 'PABE'): 1613.9,
(2013, 6, 'PABE'): 1879.3,
(2013, 7, 'PABE'): 1557.3,
(2013, 8, 'PABE'): 1700.5,
(2013, 9, 'PABE'): 1622.4,
(2013, 10, 'PABE'): 1419.9,
(2013, 11, 'PABE'): 913.7,
(2013, 12, 'PABE'): 312.7,
(2014, 1, 'PABE'): 305.7,
(2014, 2, 'PABE'): 349.7,
(2014, 3, 'PABE'): 631.8,
(2014, 4, 'PABE'): 839.1,
(2014, 5, 'PABE'): 1314.8,
(2014, 6, 'PABE'): 1556.0,
(2014, 7, 'PABE'): 1207.2,
(2014, 8, 'PABE'): 1375.1,
(2014, 9, 'PABE'): 1603.1,
(2014, 10, 'PABE'): 938.8,
(2014, 11, 'PABE'): 658.8,
(2014, 12, 'PABE'): 433.5,
(2015, 1, 'PABE'): 296.0,
(2015, 2, 'PABE'): 271.2,
(2015, 3, 'PABE'): 522.8,
(2015, 4, 'PABE'): 1138.7,
(2015, 5, 'PABE'): 1131.4,
(2015, 6, 'PABE'): 1406.1,
(2015, 7, 'PABE'): 1770.1,
(2015, 8, 'PABE'): 1336.6,
(2015, 9, 'PABE'): 1384.1,
(2015, 10, 'PABE'): 1046.0,
(2015, 11, 'PABE'): 576.7,
(2015, 12, 'PABE'): 291.0,
(2016, 1, 'PABE'): 268.0,
(2016, 2, 'PABE'): 398.7,
(2016, 3, 'PABE'): 625.8,
(2016, 4, 'PABE'): 869.7,
(2016, 5, 'PABE'): 1205.4,
(2016, 6, 'PABE'): 1571.8,
(2016, 7, 'PABE'): 1345.8,
(2016, 8, 'PABE'): 1257.6,
(2016, 9, 'PABE'): 1368.5,
(2016, 10, 'PABE'): 715.6,
(2016, 11, 'PABE'): 516.5,
(2016, 12, 'PABE'): 290.4,
(2017, 1, 'PABE'): 225.3,
(2017, 2, 'PABE'): 237.1,
(2017, 3, 'PABE'): 515.5,
(2017, 4, 'PABE'): 844.3,
(2017, 5, 'PABE'): 1542.6,
(2017, 6, 'PABE'): 1577.3,
(2017, 7, 'PABE'): 1774.0,
(2017, 8, 'PABE'): 1692.1,
(2017, 9, 'PABE'): 1828.9,
(2017, 10, 'PABE'): 870.7,
(2017, 11, 'PABE'): 610.5,
(2017, 12, 'PABE'): 299.2,
(2018, 1, 'PABE'): 251.0,
(2018, 2, 'PABE'): 361.4,
(2018, 3, 'PABE'): 584.8,
(2018, 4, 'PABE'): 869.1,
(2018, 5, 'PABE'): 1171.8,
(2018, 6, 'PABE'): 1229.1,
(2018, 7, 'PABE'): 1659.3,
(2018, 8, 'PABE'): 1184.4,
(2018, 9, 'PABE'): 1292.7,
(2018, 10, 'PABE'): 971.8,
(2008, 7, 'PABI'): 2127.1,
(2008, 8, 'PABI'): 1838.2,
(2008, 9, 'PABI'): 1425.5,
(2008, 10, 'PABI'): 1043.8,
(2008, 11, 'PABI'): 542.5,
(2008, 12, 'PABI'): 257.3,
(2009, 1, 'PABI'): 302.0,
(2009, 2, 'PABI'): 405.6,
(2009, 3, 'PABI'): 580.9,
(2009, 4, 'PABI'): 1504.9,
(2009, 5, 'PABI'): 1772.1,
(2009, 6, 'PABI'): 2146.3,
(2009, 7, 'PABI'): 2170.1,
(2009, 8, 'PABI'): 1585.8,
(2009, 9, 'PABI'): 1746.5,
(2009, 10, 'PABI'): 940.8,
(2009, 11, 'PABI'): 476.9,
(2009, 12, 'PABI'): 257.2,
(2010, 1, 'PABI'): 89.1,
(2010, 2, 'PABI'): 387.6,
(2010, 3, 'PABI'): 584.1,
(2010, 4, 'PABI'): 1046.6,
(2010, 5, 'PABI'): 1768.0,
(2010, 6, 'PABI'): 1839.7,
(2010, 7, 'PABI'): 2083.9,
(2010, 8, 'PABI'): 1463.7,
(2010, 9, 'PABI'): 1493.0,
(2010, 10, 'PABI'): 839.1,
(2010, 11, 'PABI'): 428.0,
(2010, 12, 'PABI'): 270.1,
(2011, 1, 'PABI'): 180.3,
(2011, 2, 'PABI'): 261.3,
(2011, 3, 'PABI'): 628.4,
(2011, 4, 'PABI'): 1127.7,
(2011, 5, 'PABI'): 1501.7,
(2011, 6, 'PABI'): 2409.8,
(2011, 7, 'PABI'): 1897.0,
(2011, 8, 'PABI'): 1847.0,
(2011, 9, 'PABI'): 1650.9,
(2011, 10, 'PABI'): 940.1,
(2011, 11, 'PABI'): 465.8,
(2011, 12, 'PABI'): 260.7,
(2012, 1, 'PABI'): 235.2,
(2012, 2, 'PABI'): 356.6,
(2012, 3, 'PABI'): 513.5,
(2012, 4, 'PABI'): 1133.0,
(2012, 5, 'PABI'): 2072.0,
(2012, 6, 'PABI'): 1736.5,
(2012, 7, 'PABI'): 2665.3,
(2012, 8, 'PABI'): 1396.3,
(2012, 9, 'PABI'): 1757.6,
(2012, 10, 'PABI'): 806.0,
(2012, 11, 'PABI'): 580.7,
(2012, 12, 'PABI'): 244.4,
(2013, 1, 'PABI'): 212.5,
(2013, 2, 'PABI'): 284.8,
(2013, 3, 'PABI'): 527.1,
(2013, 4, 'PABI'): 1335.7,
(2013, 5, 'PABI'): 2121.1,
(2013, 6, 'PABI'): 2283.2,
(2013, 7, 'PABI'): 1869.3,
(2013, 8, 'PABI'): 1577.0,
(2013, 9, 'PABI'): 1608.7,
(2013, 10, 'PABI'): 1395.7,
(2013, 11, 'PABI'): 685.7,
(2013, 12, 'PABI'): 143.8,
(2014, 1, 'PABI'): 147.8,
(2014, 2, 'PABI'): 259.4,
(2014, 3, 'PABI'): 667.0,
(2014, 4, 'PABI'): 865.0,
(2014, 5, 'PABI'): 1735.8,
(2014, 6, 'PABI'): 2078.3,
(2014, 7, 'PABI'): 1520.1,
(2014, 8, 'PABI'): 1763.3,
(2014, 9, 'PABI'): 1458.6,
(2014, 10, 'PABI'): 911.4,
(2014, 11, 'PABI'): 450.1,
(2014, 12, 'PABI'): 324.8,
(2015, 1, 'PABI'): 229.6,
(2015, 2, 'PABI'): 276.4,
(2015, 3, 'PABI'): 600.9,
(2015, 4, 'PABI'): 1325.4,
(2015, 5, 'PABI'): 1462.9,
(2015, 6, 'PABI'): 1615.9,
(2015, 7, 'PABI'): 1952.1,
(2015, 8, 'PABI'): 1597.3,
(2015, 9, 'PABI'): 1394.4,
(2015, 10, 'PABI'): 845.0,
(2015, 11, 'PABI'): 294.7,
(2015, 12, 'PABI'): 243.5,
(2016, 1, 'PABI'): 202.1,
(2016, 2, 'PABI'): 407.0,
(2016, 3, 'PABI'): 717.3,
(2016, 4, 'PABI'): 1023.5,
(2016, 5, 'PABI'): 1566.1,
(2016, 6, 'PABI'): 1880.0,
(2016, 7, 'PABI'): 1502.3,
(2016, 8, 'PABI'): 1341.7,
(2016, 9, 'PABI'): 1258.8,
(2016, 10, 'PABI'): 669.6,
(2016, 11, 'PABI'): 433.2,
(2016, 12, 'PABI'): 222.1,
(2017, 1, 'PABI'): 182.7,
(2017, 2, 'PABI'): 200.6,
(2017, 3, 'PABI'): 555.5,
(2017, 4, 'PABI'): 1184.1,
(2017, 5, 'PABI'): 1636.4,
(2017, 6, 'PABI'): 2001.6,
(2017, 7, 'PABI'): 2046.7,
(2017, 8, 'PABI'): 1570.7,
(2017, 9, 'PABI'): 1980.4,
(2017, 10, 'PABI'): 811.7,
(2017, 11, 'PABI'): 482.2,
(2017, 12, 'PABI'): 184.0,
(2018, 1, 'PABI'): 125.4,
(2018, 2, 'PABI'): 264.9,
(2018, 3, 'PABI'): 519.6,
(2018, 4, 'PABI'): 1025.1,
(2018, 5, 'PABI'): 1710.5,
(2018, 6, 'PABI'): 1525.8,
(2018, 7, 'PABI'): 1991.5,
(2018, 8, 'PABI'): 1590.0,
(2018, 9, 'PABI'): 1426.4,
(2018, 10, 'PABI'): 960.7,
(2008, 7, 'PABR'): 2508.5,
(2008, 8, 'PABR'): 2267.3,
(2008, 9, 'PABR'): 2492.7,
(2008, 10, 'PABR'): 1685.2,
(2008, 11, 'PABR'): 1313.3,
(2008, 12, 'PABR'): 846.7,
(2009, 1, 'PABR'): 792.3,
(2009, 2, 'PABR'): 855.1,
(2009, 3, 'PABR'): 923.5,
(2009, 4, 'PABR'): 1278.1,
(2009, 5, 'PABR'): 1821.7,
(2009, 6, 'PABR'): 1972.2,
(2009, 7, 'PABR'): 2411.1,
(2009, 8, 'PABR'): 2257.1,
(2009, 9, 'PABR'): 2489.1,
(2009, 10, 'PABR'): 1856.3,
(2009, 11, 'PABR'): 1224.8,
(2009, 12, 'PABR'): 905.7,
(2010, 1, 'PABR'): 683.9,
(2010, 2, 'PABR'): 730.8,
(2010, 3, 'PABR'): 902.5,
(2010, 4, 'PABR'): 1216.4,
(2010, 5, 'PABR'): 1907.2,
(2010, 6, 'PABR'): 2095.6,
(2010, 7, 'PABR'): 2502.5,
(2010, 8, 'PABR'): 2096.2,
(2010, 9, 'PABR'): 2303.9,
(2010, 10, 'PABR'): 1682.1,
(2010, 11, 'PABR'): 1404.2,
(2010, 12, 'PABR'): 938.6,
(2011, 1, 'PABR'): 723.5,
(2011, 2, 'PABR'): 697.5,
(2011, 3, 'PABR'): 826.3,
(2011, 4, 'PABR'): 1303.7,
(2011, 5, 'PABR'): 1608.5,
(2011, 6, 'PABR'): 2295.5,
(2011, 7, 'PABR'): 2307.2,
(2011, 8, 'PABR'): 1972.7,
(2011, 9, 'PABR'): 2182.9,
(2011, 10, 'PABR'): 1944.8,
(2011, 11, 'PABR'): 1308.3,
(2011, 12, 'PABR'): 902.7,
(2012, 1, 'PABR'): 727.9,
(2012, 2, 'PABR'): 715.3,
(2012, 3, 'PABR'): 845.2,
(2012, 4, 'PABR'): 1270.7,
(2012, 5, 'PABR'): 1952.6,
(2012, 6, 'PABR'): 2306.6,
(2012, 7, 'PABR'): 2636.2,
(2012, 8, 'PABR'): 2228.6,
(2012, 9, 'PABR'): 2669.3,
(2012, 10, 'PABR'): 1794.2,
(2012, 11, 'PABR'): 1333.6,
(2012, 12, 'PABR'): 845.4,
(2013, 1, 'PABR'): 681.0,
(2013, 2, 'PABR'): 606.9,
(2013, 3, 'PABR'): 901.0,
(2013, 4, 'PABR'): 1133.1,
(2013, 5, 'PABR'): 1746.0,
(2013, 6, 'PABR'): 2303.8,
(2013, 7, 'PABR'): 2287.0,
(2013, 8, 'PABR'): 2325.2,
(2013, 9, 'PABR'): 2222.7,
(2013, 10, 'PABR'): 1907.9,
(2013, 11, 'PABR'): 1300.4,
(2013, 12, 'PABR'): 803.5,
(2014, 1, 'PABR'): 657.3,
(2014, 2, 'PABR'): 791.7,
(2014, 3, 'PABR'): 1002.6,
(2014, 4, 'PABR'): 1220.0,
(2014, 5, 'PABR'): 1723.0,
(2014, 6, 'PABR'): 2074.7,
(2014, 7, 'PABR'): 2226.8,
(2014, 8, 'PABR'): 2020.5,
(2014, 9, 'PABR'): 2141.5,
(2014, 10, 'PABR'): 1805.1,
(2014, 11, 'PABR'): 1191.9,
(2014, 12, 'PABR'): 947.8,
(2015, 1, 'PABR'): 857.8,
(2015, 2, 'PABR'): 854.9,
(2015, 3, 'PABR'): 945.3,
(2015, 4, 'PABR'): 1342.8,
(2015, 5, 'PABR'): 1659.3,
(2015, 6, 'PABR'): 2216.3,
(2015, 7, 'PABR'): 2319.1,
(2015, 8, 'PABR'): 2001.0,
(2015, 9, 'PABR'): 2338.3,
(2015, 10, 'PABR'): 1727.7,
(2015, 11, 'PABR'): 1146.6,
(2015, 12, 'PABR'): 766.4,
(2016, 1, 'PABR'): 772.3,
(2016, 2, 'PABR'): 827.2,
(2016, 3, 'PABR'): 1011.3,
(2016, 4, 'PABR'): 1353.9,
(2016, 5, 'PABR'): 1855.0,
(2016, 6, 'PABR'): 2328.4,
(2016, 7, 'PABR'): 2019.5,
(2016, 8, 'PABR'): 2002.1,
(2016, 9, 'PABR'): 2231.6,
(2016, 10, 'PABR'): 1639.2,
(2016, 11, 'PABR'): 1129.2,
(2016, 12, 'PABR'): 844.1,
(2017, 1, 'PABR'): 681.8,
(2017, 2, 'PABR'): 789.5,
(2017, 3, 'PABR'): 913.1,
(2017, 4, 'PABR'): 1073.9,
(2017, 5, 'PABR'): 1526.8,
(2017, 6, 'PABR'): 2005.1,
(2017, 7, 'PABR'): 2012.6,
(2017, 8, 'PABR'): 1967.9,
(2017, 9, 'PABR'): 2218.4,
(2017, 10, 'PABR'): 1745.2,
(2017, 11, 'PABR'): 1247.3,
(2017, 12, 'PABR'): 921.9,
(2018, 1, 'PABR'): 600.1,
(2018, 2, 'PABR'): 775.6,
(2018, 3, 'PABR'): 896.7,
(2018, 4, 'PABR'): 1251.0,
(2018, 5, 'PABR'): 1435.2,
(2018, 6, 'PABR'): 1832.3,
(2018, 7, 'PABR'): 2136.5,
(2018, 8, 'PABR'): 1717.2,
(2018, 9, 'PABR'): 2018.6,
(2018, 10, 'PABR'): 1750.8,
(2008, 7, 'PABT'): 2310.7,
(2008, 8, 'PABT'): 2132.0,
(2008, 9, 'PABT'): 1859.2,
(2008, 10, 'PABT'): 1306.6,
(2008, 11, 'PABT'): 634.4,
(2008, 12, 'PABT'): 242.8,
(2009, 1, 'PABT'): 269.1,
(2009, 2, 'PABT'): 438.1,
(2009, 3, 'PABT'): 717.5,
(2009, 4, 'PABT'): 1783.3,
(2009, 5, 'PABT'): 1885.0,
(2009, 6, 'PABT'): 2343.2,
(2009, 7, 'PABT'): 2469.0,
(2009, 8, 'PABT'): 1926.3,
(2009, 9, 'PABT'): 2017.3,
(2009, 10, 'PABT'): 1291.6,
(2009, 11, 'PABT'): 601.1,
(2009, 12, 'PABT'): 235.0,
(2010, 1, 'PABT'): 145.1,
(2010, 2, 'PABT'): 460.6,
(2010, 3, 'PABT'): 679.3,
(2010, 4, 'PABT'): 1231.8,
(2010, 5, 'PABT'): 2205.1,
(2010, 6, 'PABT'): 2151.2,
(2010, 7, 'PABT'): 2587.6,
(2010, 8, 'PABT'): 1867.3,
(2010, 9, 'PABT'): 1871.1,
(2010, 10, 'PABT'): 1054.0,
(2010, 11, 'PABT'): 471.8,
(2010, 12, 'PABT'): 170.4,
(2011, 1, 'PABT'): 245.7,
(2011, 2, 'PABT'): 300.4,
(2011, 3, 'PABT'): 709.9,
(2011, 4, 'PABT'): 1273.6,
(2011, 5, 'PABT'): 1732.4,
(2011, 6, 'PABT'): 2669.5,
(2011, 7, 'PABT'): 2284.9,
(2011, 8, 'PABT'): 2061.9,
(2011, 9, 'PABT'): 1909.8,
(2011, 10, 'PABT'): 1336.0,
(2011, 11, 'PABT'): 573.2,
(2011, 12, 'PABT'): 242.0,
(2012, 1, 'PABT'): 241.5,
(2012, 2, 'PABT'): 393.3,
(2012, 3, 'PABT'): 621.6,
(2012, 4, 'PABT'): 1219.0,
(2012, 5, 'PABT'): 2230.7,
(2012, 6, 'PABT'): 2033.2,
(2012, 7, 'PABT'): 3112.7,
(2012, 8, 'PABT'): 1838.3,
(2012, 9, 'PABT'): 2178.6,
(2012, 10, 'PABT'): 1081.2,
(2012, 11, 'PABT'): 655.0,
(2012, 12, 'PABT'): 166.0,
(2013, 1, 'PABT'): 229.0,
(2013, 2, 'PABT'): 406.5,
(2013, 3, 'PABT'): 722.6,
(2013, 4, 'PABT'): 1426.7,
(2013, 5, 'PABT'): 2215.9,
(2013, 6, 'PABT'): 2497.1,
(2013, 7, 'PABT'): 2135.5,
(2013, 8, 'PABT'): 1967.8,
(2013, 9, 'PABT'): 1943.8,
(2013, 10, 'PABT'): 1530.9,
(2013, 11, 'PABT'): 854.3,
(2013, 12, 'PABT'): 169.2,
(2014, 1, 'PABT'): 204.9,
(2014, 2, 'PABT'): 389.0,
(2014, 3, 'PABT'): 789.4,
(2014, 4, 'PABT'): 1030.3,
(2014, 5, 'PABT'): 1977.9,
(2014, 6, 'PABT'): 2331.2,
(2014, 7, 'PABT'): 1894.6,
(2014, 8, 'PABT'): 1977.3,
(2014, 9, 'PABT'): 1700.7,
(2014, 10, 'PABT'): 1192.4,
(2014, 11, 'PABT'): 614.1,
(2014, 12, 'PABT'): 313.1,
(2015, 1, 'PABT'): 290.7,
(2015, 2, 'PABT'): 311.5,
(2015, 3, 'PABT'): 701.2,
(2015, 4, 'PABT'): 1285.3,
(2015, 5, 'PABT'): 1709.5,
(2015, 6, 'PABT'): 1838.9,
(2015, 7, 'PABT'): 2347.8,
(2015, 8, 'PABT'): 1745.0,
(2015, 9, 'PABT'): 1766.0,
(2015, 10, 'PABT'): 1035.3,
(2015, 11, 'PABT'): 370.2,
(2015, 12, 'PABT'): 269.2,
(2016, 1, 'PABT'): 181.1,
(2016, 2, 'PABT'): 428.9,
(2016, 3, 'PABT'): 844.0,
(2016, 4, 'PABT'): 1205.3,
(2016, 5, 'PABT'): 1698.9,
(2016, 6, 'PABT'): 2230.0,
(2016, 7, 'PABT'): 1828.3,
(2016, 8, 'PABT'): 1652.4,
(2016, 9, 'PABT'): 1622.9,
(2016, 10, 'PABT'): 996.3,
(2016, 11, 'PABT'): 480.3,
(2016, 12, 'PABT'): 259.9,
(2017, 1, 'PABT'): 183.2,
(2017, 2, 'PABT'): 289.1,
(2017, 3, 'PABT'): 734.7,
(2017, 4, 'PABT'): 1301.8,
(2017, 5, 'PABT'): 1923.4,
(2017, 6, 'PABT'): 2200.0,
(2017, 7, 'PABT'): 2336.9,
(2017, 8, 'PABT'): 1901.6,
(2017, 9, 'PABT'): 2214.9,
(2017, 10, 'PABT'): 1089.9,
(2017, 11, 'PABT'): 511.2,
(2017, 12, 'PABT'): 169.2,
(2018, 1, 'PABT'): 112.6,
(2018, 2, 'PABT'): 423.7,
(2018, 3, 'PABT'): 603.4,
(2018, 4, 'PABT'): 1221.7,
(2018, 5, 'PABT'): 1919.5,
(2018, 6, 'PABT'): 1631.5,
(2018, 7, 'PABT'): 2295.6,
(2018, 8, 'PABT'): 1864.0,
(2018, 9, 'PABT'): 1682.7,
(2018, 10, 'PABT'): 1188.3,
(2008, 7, 'PACD'): 1180.6,
(2008, 8, 'PACD'): 1213.8,
(2008, 9, 'PACD'): 1243.7,
(2008, 10, 'PACD'): 981.1,
(2008, 11, 'PACD'): 822.2,
(2008, 12, 'PACD'): 623.7,
(2009, 1, 'PACD'): 541.9,
(2009, 2, 'PACD'): 472.5,
(2009, 3, 'PACD'): 520.3,
(2009, 4, 'PACD'): 824.8,
(2009, 5, 'PACD'): 1036.2,
(2009, 6, 'PACD'): 998.9,
(2009, 7, 'PACD'): 1236.0,
(2009, 8, 'PACD'): 983.3,
(2009, 9, 'PACD'): 1211.3,
(2009, 10, 'PACD'): 977.7,
(2009, 11, 'PACD'): 786.9,
(2009, 12, 'PACD'): 558.8,
(2010, 1, 'PACD'): 461.3,
(2010, 2, 'PACD'): 475.6,
(2010, 3, 'PACD'): 526.7,
(2010, 4, 'PACD'): 721.4,
(2010, 5, 'PACD'): 986.7,
(2010, 6, 'PACD'): 935.1,
(2010, 7, 'PACD'): 1125.9,
(2010, 8, 'PACD'): 1064.1,
(2010, 9, 'PACD'): 1350.0,
(2010, 10, 'PACD'): 1033.9,
(2010, 11, 'PACD'): 831.3,
(2010, 12, 'PACD'): 640.0,
(2011, 1, 'PACD'): 505.5,
(2011, 2, 'PACD'): 454.9,
(2011, 3, 'PACD'): 469.3,
(2011, 4, 'PACD'): 795.3,
(2011, 5, 'PACD'): 910.7,
(2011, 6, 'PACD'): 1132.2,
(2011, 7, 'PACD'): 1044.5,
(2011, 8, 'PACD'): 948.2,
(2011, 9, 'PACD'): 1076.1,
(2011, 10, 'PACD'): 958.4,
(2011, 11, 'PACD'): 733.1,
(2011, 12, 'PACD'): 596.0,
(2012, 1, 'PACD'): 524.9,
(2012, 2, 'PACD'): 435.9,
(2012, 3, 'PACD'): 563.0,
(2012, 4, 'PACD'): 729.8,
(2012, 5, 'PACD'): 941.4,
(2012, 6, 'PACD'): 1073.6,
(2012, 7, 'PACD'): 1431.8,
(2012, 8, 'PACD'): 1057.1,
(2012, 9, 'PACD'): 1377.8,
(2012, 10, 'PACD'): 1015.9,
(2012, 11, 'PACD'): 881.1,
(2012, 12, 'PACD'): 658.7,
(2013, 1, 'PACD'): 546.7,
(2013, 2, 'PACD'): 449.9,
(2013, 3, 'PACD'): 586.6,
(2013, 4, 'PACD'): 761.4,
(2013, 5, 'PACD'): 1012.1,
(2013, 6, 'PACD'): 1116.6,
(2013, 7, 'PACD'): 974.3,
(2013, 8, 'PACD'): 1004.6,
(2013, 9, 'PACD'): 1044.1,
(2013, 10, 'PACD'): 941.1,
(2013, 11, 'PACD'): 806.5,
(2013, 12, 'PACD'): 536.4,
(2014, 1, 'PACD'): 381.5,
(2014, 2, 'PACD'): 366.6,
(2014, 3, 'PACD'): 464.8,
(2014, 4, 'PACD'): 588.0,
(2014, 5, 'PACD'): 798.9,
(2014, 6, 'PACD'): 823.1,
(2014, 7, 'PACD'): 850.8,
(2014, 8, 'PACD'): 956.0,
(2014, 9, 'PACD'): 957.6,
(2014, 10, 'PACD'): 779.4,
(2014, 11, 'PACD'): 647.4,
(2014, 12, 'PACD'): 462.2,
(2015, 1, 'PACD'): 309.8,
(2015, 2, 'PACD'): 275.8,
(2015, 3, 'PACD'): 460.5,
(2015, 4, 'PACD'): 770.7,
(2015, 5, 'PACD'): 784.2,
(2015, 6, 'PACD'): 952.2,
...}
In [43]:
# Convert the notebook to a script.
#!jupyter nbconvert --to script preprocess_data.ipynb
[NbConvertApp] Converting notebook preprocess_data.ipynb to script
[NbConvertApp] Writing 5511 bytes to preprocess_data.py
Content source: alanmitchell/fnsb-benchmark
Similar notebooks: