-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Facade upgrades #617
base: develop
Are you sure you want to change the base?
Facade upgrades #617
Changes from 81 commits
f4f6045
3b54b74
e4802a6
4b0ae33
9a660f7
0a36c04
557f127
10db831
590030c
46db0cb
2a980b7
2809c58
ae09528
182c927
002d843
629952c
eefd212
923f01e
72756a4
f016c8d
d081f4c
95c2d40
2344400
da418d9
3236edf
3b153bf
46ceee4
be9d9fa
279459d
e9cf07c
b15f54e
f2ac5b7
45bc98b
be9ef2d
a1c659f
6c6d6fd
47ebf45
add53dd
12307d9
aa50c3f
65fd678
4c761d4
9f68333
e434aa7
57b9550
b306b3e
8c92a7a
b8de291
492b936
d90cf41
90a4f77
0453c46
9d2dda8
2026eb6
9d459bf
d60bedb
25d12db
04cc135
ebd0b92
5237837
5f82f59
e64bb8b
0e6de2e
3a9f261
8a2f016
db9aff8
9a60a55
ad43a91
f703db6
4697e8e
894bfe8
3fba8b0
22cc0c7
5fae3bb
43ec31b
3e3c4b2
84d4943
7f1076b
a146948
9884373
bf80b6c
47f4cb5
126dbab
6f4b6ac
8cb0c04
5404dd0
c0e197c
dfc9350
15f071d
484d8af
602348f
34759b9
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,155 @@ | ||
#import packages | ||
import pandas as pd | ||
import numpy as np | ||
import os | ||
|
||
#set working directory | ||
default_dir = "C:/Users/EPRESENT/Documents/Mini Projects/Facades/ResStock Results/test10kNo3" | ||
|
||
#load utility bill costs | ||
df_elec_costs = pd.read_csv("C:/Users/EPRESENT/Documents/Mini Projects/Facades/Economic Analysis/Variable Elec Cost by State from EIA State Data.csv") | ||
df_ng_costs = pd.read_csv('C:/Users/EPRESENT/Documents/Load Shapes Project/Modeling and Calibration/Calculating Utility Bills/NG costs by state.csv') | ||
df_fo_costs = pd.read_csv('C:/Users/EPRESENT/Documents/Load Shapes Project/Modeling and Calibration/Calculating Utility Bills/Fuel Oil Prices Averaged by State.csv') | ||
df_lp_costs = pd.read_csv('C:/Users/EPRESENT/Documents/Load Shapes Project/Modeling and Calibration/Calculating Utility Bills/Propane costs by state.csv') | ||
|
||
#define constants | ||
btu_propane_in_one_gallon = 91452 #source: https://www.eia.gov/energyexplained/units-and-calculators/ | ||
gallons_to_barrels = 42 #source: https://www.eia.gov/energyexplained/units-and-calculators/ | ||
btu_fueloil_in_one_barrel = 6287000 #source: https://www.eia.gov/energyexplained/units-and-calculators/ | ||
|
||
|
||
##define functions | ||
|
||
#choose results columns to work with | ||
selected_cols = [ | ||
'building_id', | ||
'simulation_output_report.total_site_electricity_kwh', | ||
'simulation_output_report.total_site_natural_gas_therm', | ||
'simulation_output_report.total_site_fuel_oil_mbtu', | ||
'simulation_output_report.total_site_propane_mbtu', | ||
'simulation_output_report.total_site_energy_mbtu', | ||
'simulation_output_report.upgrade_cost_usd'] | ||
def downselect_cols(df): | ||
df = df[selected_cols] | ||
return df | ||
|
||
#calculate total energy difference for each upgrade, for each home, add to the mini dataframes | ||
def calc_delta_elec(df_upgrade, df_baseline): | ||
return (df_upgrade['simulation_output_report.total_site_electricity_kwh']-df_baseline['simulation_output_report.total_site_electricity_kwh']) | ||
def calc_delta_ng(df_upgrade, df_baseline): | ||
return (df_upgrade['simulation_output_report.total_site_natural_gas_therm']-df_baseline['simulation_output_report.total_site_natural_gas_therm']) | ||
def calc_delta_fo(df_upgrade, df_baseline): | ||
return (df_upgrade['simulation_output_report.total_site_fuel_oil_mbtu']-df_baseline['simulation_output_report.total_site_fuel_oil_mbtu']) | ||
def calc_delta_lp(df_upgrade, df_baseline): | ||
return (df_upgrade['simulation_output_report.total_site_propane_mbtu']-df_baseline['simulation_output_report.total_site_propane_mbtu']) | ||
def calc_delta_energy(df_upgrade, df_baseline): | ||
return(df_upgrade['simulation_output_report.total_site_energy_mbtu']-df_baseline['simulation_output_report.total_site_energy_mbtu']) | ||
|
||
#calculate year1 utility bill savings | ||
def calc_year1_bill_savings(var_util_costs, delta_energy): | ||
return (var_util_costs*delta_energy) | ||
def calc_year1_fo_bill_savings(var_util_costs, delta_energy): | ||
return (delta_energy * | ||
var_util_costs* | ||
gallons_to_barrels* | ||
(1/btu_fueloil_in_one_barrel)* | ||
1000000) | ||
def calc_year1_lp_bill_savings(var_util_costs, delta_energy): | ||
return(delta_energy * | ||
var_util_costs* | ||
(1/btu_propane_in_one_gallon)* | ||
1000000) | ||
|
||
#calculate simple payback period | ||
def calc_spp(upfront_cost, year1_savings): | ||
return(upfront_cost/year1_savings) | ||
|
||
#calculate npv | ||
analysis_period = 30 | ||
discount_rate = 0.034 | ||
def calc_npv(upfront_cost, year1_savings): #note: assuming 30 year lifetime for everything, which is not a general solution to this situation | ||
npv_list = [] | ||
for cost, savings in zip(upfront_cost, year1_savings): #this loops through all the rows in the results_csv (ie each dwelling unit) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @ekpresent I think there is probably a way to avoid looping through each row if compute time gets to be a concern There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It isn't yet. :) |
||
cost_array = [0]*(analysis_period+1) | ||
cost_array[0] = cost | ||
savings_array = [savings] * (analysis_period+1) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @ekpresent Since you are starting the equation at year 0, shouldn't the savings array start with 0? eg: You can update with There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think I mimicked how @joseph-robertson was doing it. If the upgrade happens on 1/1/00, then Year 0 has both the upgrade cost and a year of savings. If it happens on 12/31/00, then Year 0 has the upgrade cost and no savings. Not sure which is better. @ejhw do you have a preference? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @ekpresent I think upgrade cost should happen at year 0 (no discounting) and the first year of savings should happen at year 1 (discounted by 1 year). |
||
cash_flows = list(np.array(savings_array)-np.array(cost_array)) | ||
npv = 0 | ||
for year in range(0,analysis_period + 1): | ||
npv += (1/((1 + discount_rate) ** year)) * cash_flows[year] | ||
npv_list.append(npv) | ||
return npv_list | ||
|
||
##Set up and run things! | ||
#number of upgrade packages | ||
num_ups = 4 | ||
|
||
#load baseline results | ||
results_b = pd.read_parquet(os.path.join(default_dir, "results_up00.parquet"), engine = "auto") | ||
|
||
#add utility bill cost unformation to the baseline results | ||
results_b = pd.merge(results_b, df_elec_costs[['State', 'Variable Elec Cost $/kWh']], left_on = "build_existing_model.state", right_on = 'State', how = 'left') | ||
results_b = results_b.drop(['State'], 1) | ||
results_b = pd.merge(results_b, df_ng_costs[['State', 'NG Cost without Meter Charge [$/therm]']], left_on = "build_existing_model.state", right_on = 'State', how = 'left') | ||
results_b = results_b.drop(['State'], 1) | ||
results_b = pd.merge(results_b, df_fo_costs[['State', 'Average FO Price [$/gal]']], left_on = "build_existing_model.state", right_on = 'State', how = 'left') | ||
results_b = results_b.drop(['State'], 1) | ||
results_b = pd.merge(results_b, df_lp_costs[['State', 'Average Weekly Cost [$/gal]']], left_on = "build_existing_model.state", right_on = 'State', how = 'left') | ||
results_b = results_b.drop(['State'], 1) | ||
results_b.rename(columns={ | ||
'Variable Elec Cost $/kWh': 'Elec Variable Cost [$/kWh]', | ||
'NG Cost without Meter Charge [$/therm]': 'NG Variable Cost [$/therm]', | ||
'Average FO Price [$/gal]': 'FO Average Cost [$/gal]', | ||
'Average Weekly Cost [$/gal]': 'LP Average Price [$/gal]'}, | ||
inplace=True) | ||
|
||
|
||
#define string parts for upgrades | ||
file_start = "results_up" | ||
file_end = ".parquet" | ||
up_start = "up" | ||
|
||
#do economic calculations for each upgrade package | ||
for i in range(1, num_ups+1): | ||
if i<10: | ||
upnum = "0" + str(i) | ||
else: | ||
upnum = str(i) | ||
filename = file_start + upnum + file_end | ||
upgrade = up_start + upnum | ||
results_up = pd.read_parquet(os.path.join(default_dir, filename), engine = "auto") | ||
df = downselect_cols(results_up) | ||
#calculate changes in energy use for each fuel | ||
delta_elec = calc_delta_elec(results_b, df) | ||
results_b[upgrade + "_delta_elec_kWh"] = delta_elec | ||
delta_ng = calc_delta_ng(results_b, df) | ||
results_b[upgrade + "_delta_ng_therms"] = delta_ng | ||
delta_fo = calc_delta_fo(results_b, df) | ||
results_b[upgrade + "_delta_fo_mmbtu"] = delta_fo | ||
delta_lp = calc_delta_lp(results_b, df) | ||
results_b[upgrade + "_delta_lp_mmbtu"] = delta_lp | ||
delta_energy = calc_delta_elec(results_b, df) | ||
Comment on lines
+126
to
+134
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @ekpresent Looks like you are passing ( |
||
results_b[upgrade + "_delta_allfuels_mmbtu"] = delta_energy | ||
#calculate year1 savings for each fuel, and total | ||
year1_savings_elec = calc_year1_bill_savings(results_b['Elec Variable Cost [$/kWh]'], delta_elec) | ||
results_b[upgrade + "_annualbillsavings_elec_$"] = year1_savings_elec | ||
year1_savings_ng = calc_year1_bill_savings(results_b['NG Variable Cost [$/therm]'], delta_ng) | ||
results_b[upgrade + "_annualbillsavings_ng_$"] = year1_savings_ng | ||
year1_savings_fo = calc_year1_fo_bill_savings(results_b['FO Average Cost [$/gal]'], delta_fo) | ||
results_b[upgrade + "_annualbillsavings_fo_$"] = year1_savings_fo | ||
year1_savings_lp = calc_year1_fo_bill_savings(results_b['LP Average Price [$/gal]'], delta_lp) | ||
results_b[upgrade + "_annualbillsavings_lp_$"] = year1_savings_lp | ||
year1_savings_allfuels = year1_savings_elec + year1_savings_ng + year1_savings_fo + year1_savings_lp | ||
results_b[upgrade + "_annualbillsavings_allfuels_$"] = year1_savings_allfuels | ||
#calculate simple payback period considering all fuels | ||
simple_payback_period = calc_spp(df['simulation_output_report.upgrade_cost_usd'], year1_savings_allfuels) | ||
results_b[upgrade + "_spp_allfuels_yrs"] = simple_payback_period | ||
#calculate npv considering all fuels | ||
npv = calc_npv(df['simulation_output_report.upgrade_cost_usd'], year1_savings_allfuels) | ||
results_b[upgrade + "_npv_allfuels_$"] = npv | ||
|
||
#save results | ||
results_b.to_csv('results_with_economics_allfuels.csv') | ||
|
||
|
||
#visualizations |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
State,Average FO Price [$/gal],Source | ||
AK,3.236461538,US | ||
AL,3.236461538,US | ||
AR,3.236461538,US | ||
AZ,3.236461538,US | ||
CA,3.236461538,US | ||
CO,3.236461538,US | ||
CT,3.314115385,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
DC,4.042192308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
DE,3.127192308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
FL,2.882423077,Lower Atlantic PADD | ||
GA,2.882423077,Lower Atlantic PADD | ||
HI,3.236461538,US | ||
IA,2.452692308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
ID,3.236461538,US | ||
IL,2.660384615,Midwest PADD | ||
IN,2.753846154,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
KS,2.660384615,Midwest PADD | ||
KY,2.665423077,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
LA,3.236461538,US | ||
MA,3.269,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
MD,3.233076923,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
ME,3.013192308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
MI,2.683692308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
MN,2.662307692,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
MO,2.660384615,Midwest PADD | ||
MS,3.236461538,US | ||
MT,3.236461538,US | ||
NC,2.887115385,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
ND,2.660384615,Midwest PADD | ||
NE,2.528192308,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
NH,3.114807692,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
NJ,3.300769231,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
NM,3.236461538,US | ||
NV,3.236461538,US | ||
NY,3.538846154,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
OH,2.689230769,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
OK,3.236461538,US | ||
OR,3.236461538,US | ||
PA,2.872269231,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
RI,3.356269231,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
SC,2.882423077,Lower Atlantic PADD | ||
SD,2.660384615,Midwest PADD | ||
TN,3.236461538,US | ||
TX,3.236461538,US | ||
UT,3.236461538,US | ||
VA,2.879961538,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
VT,2.858269231,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
WA,3.236461538,US | ||
WI,2.692230769,https://www.eia.gov/dnav/pet/pet_pri_wfr_a_EPD2F_PRS_dpgal_w.htm | ||
WV,3.285538462,Central Atlantic PADD | ||
WY,3.236461538,US |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
State,NG Cost without Meter Charge [$/therm] | ||
US,0.830879584 | ||
AL,1.173929594 | ||
AK,0.973198308 | ||
AZ,0.905718119 | ||
AR,0.850417794 | ||
CA,0.937476469 | ||
CO,0.583869659 | ||
CT,1.267521203 | ||
DE,0.964717461 | ||
DC,1.068721099 | ||
FL,1.479354089 | ||
GA,1.239373765 | ||
HI,3.603197324 | ||
ID,0.451371175 | ||
IL,0.658241947 | ||
IN,0.675756069 | ||
IA,0.619201987 | ||
KS,0.724306222 | ||
KY,0.846856452 | ||
LA,0.780898464 | ||
ME,1.395879731 | ||
MD,1.024927384 | ||
MA,1.270318428 | ||
MI,0.649000707 | ||
MN,0.636784599 | ||
MS,0.764356372 | ||
MO,0.836540341 | ||
MT,0.530786118 | ||
NE,0.588836098 | ||
NV,0.675023867 | ||
NH,1.341689274 | ||
NJ,0.783392189 | ||
NM,0.434452883 | ||
NY,1.091072481 | ||
NC,0.992095947 | ||
ND,0.528200964 | ||
OH,0.773916553 | ||
OK,0.723729264 | ||
OR,0.753906279 | ||
PA,0.973046117 | ||
RI,1.320026286 | ||
SC,0.959215397 | ||
SD,0.532388629 | ||
TN,0.689276808 | ||
TX,0.750002248 | ||
UT,0.586772001 | ||
VT,1.118904706 | ||
VA,1.018218906 | ||
WA,0.770398568 | ||
WV,0.772416077 | ||
WI,0.586606117 | ||
WY,0.62202886 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
State,Average Weekly Cost [$/gal],Source | ||
AK,2.421076923,US | ||
AL,2.568769231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
AR,2.185076923,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
AZ,2.421076923,US | ||
CA,2.421076923,US | ||
CO,2.116884615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
CT,2.979115385,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
DC,3.218692308,Central Atlantic PADD | ||
DE,3.149307692,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
FL,4.783769231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
GA,2.322538462,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
HI,2.421076923,US | ||
IA,1.329269231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
ID,2.461,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
IL,1.635269231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
IN,2.047576923,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
KS,1.543038462,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
KY,2.225461538,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
LA,2.448923077,Gulf Coast PADD | ||
MA,3.135076923,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MD,3.275269231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
ME,2.998384615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MI,2.017461538,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MN,1.621192308,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MO,1.770269231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MS,2.529192308,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
MT,1.894192308,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
NC,2.824769231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
ND,1.423769231,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
NE,1.342846154,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
NH,3.283423077,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
NJ,3.847692308,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
NM,2.421076923,US | ||
NV,2.421076923,US | ||
NY,3.271846154,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
OH,2.671846154,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
OK,1.914346154,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
OR,2.421076923,US | ||
PA,3.036384615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
RI,3.542884615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
SC,3.228615385,Lower Atlantic PADD | ||
SD,1.484076923,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
TN,3.017923077,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
TX,2.437384615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
UT,2.546384615,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
VA,3.100115385,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
VT,3.463730769,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
WA,2.421076923,US | ||
WI,1.573,http://www.eia.gov/dnav/pet/pet_pri_dist_a_epd2_prt_dpgal_a.htm | ||
WV,3.218692308,Central Atlantic PADD | ||
WY,2.169807692,Rocky Mountain PADD |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
State,Variable Elec Cost $/kWh | ||
AK,0.211166119 | ||
AL,0.116957441 | ||
AR,0.089003122 | ||
AZ,0.11447786 | ||
CA,0.172740358 | ||
CO,0.10709471 | ||
CT,0.204215862 | ||
DC,0.116538313 | ||
DE,0.114961811 | ||
FL,0.10799404 | ||
GA,0.108707305 | ||
HI,0.30156265 | ||
IA,0.113057037 | ||
ID,0.088352415 | ||
IL,0.116169513 | ||
IN,0.115385373 | ||
KS,0.11589661 | ||
KY,0.09897968 | ||
LA,0.08983531 | ||
MA,0.201757218 | ||
MD,0.120907239 | ||
ME,0.161096264 | ||
MI,0.141719649 | ||
MN,0.117241289 | ||
MO,0.101934242 | ||
MS,0.104370421 | ||
MT,0.099662113 | ||
NC,0.104915977 | ||
ND,0.093995108 | ||
NE,0.097690144 | ||
NH,0.183788419 | ||
NJ,0.143410923 | ||
NM,0.109473478 | ||
NV,0.108811236 | ||
NY,0.162086726 | ||
OH,0.112333519 | ||
OK,0.093106229 | ||
OR,0.09915016 | ||
PA,0.126081544 | ||
RI,0.199458158 | ||
SC,0.120936837 | ||
SD,0.105955422 | ||
TN,0.10051095 | ||
TX,0.108842605 | ||
UT,0.090257338 | ||
VA,0.111779166 | ||
VT,0.158910521 | ||
WA,0.086808067 | ||
WI,0.126915429 | ||
WV,0.103256296 | ||
WY,0.100175294 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ekpresent update locations to relative paths on branch