Breakthrough-Energy / PreREISE

Generate input data for scenario framework
https://breakthrough-energy.github.io/docs/
MIT License
20 stars 28 forks source link

Calculate scaling factors for each year #337

Closed rouille closed 1 year ago

rouille commented 1 year ago

Pull Request doc

Purpose

For each year, calculate the scaling factors of different vehicle technology in urban areas and rurak areas

What the code is doing

Testing

Files were written successfully

Where to look

Mostly pandas operation to rarrange rows and columns

Usage Example/Visuals

>>> from prereise.gather.demanddata.transportation_electrification.generate_scaling_factors import (
...     census_ua_url,
...     census_state_url,
...     tht_data_url,
...     load_census_ua,
...     load_census_state,
...     load_dot_vmt_per_capita,
...     calculate_vmt_for_ua,
...     calculate_vmt_for_state,
...     calculate_urban_rural_fraction,
...     get_efs_vmt_projection_for_state,
...     generate_scaling_factor,
... )
from prereise.gather.demanddata.nrel_efs.get_efs_annual_data import (
    get_efs_annual_data,
    nrel_annual_efs_url,
)
>>> from prereise.gather.demanddata.nrel_efs.get_efs_annual_data import (
...     get_efs_annual_data,
...     nrel_annual_efs_url,
... )
>>> 
>>> census_ua = load_census_ua(census_ua_url)
>>> census_state = load_census_state(census_state_url)
>>> tht_ua, tht_state = load_dot_vmt_per_capita(tht_data_url)
>>> vmt_ua = calculate_vmt_for_ua(census_ua, tht_ua)
>>> vmt_state = calculate_vmt_for_state(census_state, tht_state)
>>> vmt_ua_perc, vmt_ra_perc = calculate_urban_rural_fraction(vmt_ua, vmt_state)
>>> 
>>> efs = get_efs_annual_data(nrel_annual_efs_url, "TRANSPORTATION")
>>> 
>>> vmt_projection = get_efs_vmt_projection_for_state(efs)
>>> 
>>> ua_scaling, ra_scaling = generate_scaling_factor(
...     vmt_projection, vmt_ua_perc, vmt_ra_perc
... )
>>> ua_scaling[2033]
                     state          UA     MDV Truck     HDV Truck  ...  LDV Car - 300 mi  LDV Truck - 100 mi  LDV Truck - 200 mi  LDV Truck - 300 mi
Area Name                                                           ...                                                                              
Anchorage, AK           AK   Anchorage  2.300761e+07  4.955224e+06  ...      3.264394e+07        8.891059e+07        4.117207e+07        1.462609e+06
Fairbanks, AK           AK   Fairbanks  8.309342e+06  1.789610e+06  ...      1.178956e+07        3.211062e+07        1.486955e+07        5.282306e+05
Mobile, AL              AL      Mobile  2.902501e+07  2.966185e+07  ...      1.029296e+08        2.803438e+08        1.298196e+08        4.611751e+06
Huntsville, AL          AL  Huntsville  2.164944e+07  2.212445e+07  ...      7.677405e+07        2.091054e+08        9.683102e+07        3.439855e+06
Columbus, GA-AL         AL    Columbus  4.015792e+06  4.103902e+06  ...      1.424095e+07        3.878732e+07        1.796135e+07        6.380646e+05
...                    ...         ...           ...           ...  ...               ...                 ...                 ...                 ...
Hagerstown, MD-WV-PA    WV  Hagerstown  5.746369e+06  3.968723e+06  ...      1.568705e+07        4.272598e+07        1.978523e+07        7.028569e+05
Huntington, WV-KY-OH    WV  Huntington  9.104227e+06  6.287825e+06  ...      2.485368e+07        6.769266e+07        3.134663e+07        1.113567e+06
Cheyenne, WY            WY    Cheyenne  3.068571e+06  7.783800e+06  ...      1.632671e+07        4.446820e+07        2.059201e+07        7.315170e+05
Casper, WY              WY      Casper  1.860237e+06  4.718716e+06  ...      9.897621e+06        2.695763e+07        1.248334e+07        4.434621e+05
Washington, DC-VA-MD    DC  Washington  5.233295e+07  4.758920e+07  ...      1.763478e+08        4.803091e+08        2.224181e+08        7.901249e+06

[508 rows x 10 columns]
>>> ra_scaling[2033]
          MDV Truck     HDV Truck  LDV Car - 100 mi  LDV Car - 200 mi  LDV Car - 300 mi  LDV Truck - 100 mi  LDV Truck - 200 mi  LDV Truck - 300 mi
State                                                                                                                                              
AK     5.571043e+07  1.199854e+07      1.383574e+08      7.942963e+07      7.904375e+07        2.152873e+08        9.969370e+07        3.541550e+06
AL     2.860737e+08  2.923504e+08      1.775744e+09      1.019436e+09      1.014485e+09        2.763099e+09        1.279516e+09        4.545392e+07
AR     1.553374e+08  2.698004e+08      9.803685e+08      5.628196e+08      5.600859e+08        1.525476e+09        7.064065e+08        2.509461e+07
AZ     1.893427e+08  2.086511e+08      1.144314e+09      6.569391e+08      6.537484e+08        1.780580e+09        8.245379e+08        2.929114e+07
CA     6.573036e+08  5.646318e+08      3.846337e+09      2.208144e+09      2.197416e+09        5.984988e+09        2.771485e+09        9.845510e+07
CO     9.398563e+07  1.227441e+08      1.020256e+09      5.857186e+08      5.828738e+08        1.587542e+09        7.351476e+08        2.611561e+07
CT     2.468598e+07  1.521919e+07      2.862765e+08      1.643484e+08      1.635502e+08        4.454530e+08        2.062771e+08        7.327853e+06
DE     3.077558e+07  8.162556e+06      1.739611e+08      9.986932e+07      9.938425e+07        2.706876e+08        1.253481e+08        4.452904e+06
FL     4.204056e+08  3.762101e+08      2.720555e+09      1.561843e+09      1.554257e+09        4.233247e+09        1.960301e+09        6.963836e+07
GA     2.777350e+08  3.285040e+08      2.188051e+09      1.256138e+09      1.250036e+09        3.404658e+09        1.576604e+09        5.600778e+07
HI     2.918917e+07  1.966170e+06      2.423099e+08      1.391077e+08      1.384319e+08        3.770398e+08        1.745968e+08        6.202433e+06
IA     1.206230e+08  2.032904e+08      9.865787e+08      5.663847e+08      5.636339e+08        1.535140e+09        7.108813e+08        2.525357e+07
ID     1.047109e+08  8.541730e+07      4.813802e+08      2.763554e+08      2.750132e+08        7.490389e+08        3.468595e+08        1.232194e+07
IL     1.728404e+08  2.913021e+08      1.314580e+09      7.546872e+08      7.510216e+08        2.045518e+09        9.472235e+08        3.364946e+07
IN     3.264242e+08  3.674578e+08      1.853785e+09      1.064239e+09      1.059070e+09        2.884532e+09        1.335748e+09        4.745154e+07
KS     1.148265e+08  1.860320e+08      7.707038e+08      4.424532e+08      4.403042e+08        1.199233e+09        5.553322e+08        1.972779e+07
KY     3.261771e+08  2.895484e+08      1.843739e+09      1.058472e+09      1.053331e+09        2.868901e+09        1.328510e+09        4.719441e+07
LA     2.883652e+08  2.250774e+08      1.084307e+09      6.224899e+08      6.194664e+08        1.687208e+09        7.813000e+08        2.775514e+07
MA     3.584459e+07  1.791505e+07      3.421508e+08      1.964253e+08      1.954713e+08        5.323947e+08        2.465375e+08        8.758075e+06
MD     1.427584e+08  6.803294e+07      9.050770e+08      5.195955e+08      5.170718e+08        1.408321e+09        6.521551e+08        2.316736e+07
ME     7.943055e+07  4.432327e+07      5.430434e+08      3.117557e+08      3.102415e+08        8.449882e+08        3.912910e+08        1.390034e+07
MI     1.666112e+08  2.122700e+08      1.765841e+09      1.013752e+09      1.008828e+09        2.747690e+09        1.272380e+09        4.520044e+07
MN     1.567601e+08  1.267115e+08      1.519024e+09      8.720563e+08      8.678208e+08        2.363637e+09        1.094536e+09        3.888264e+07
MO     2.508930e+08  3.897573e+08      1.548362e+09      8.888991e+08      8.845818e+08        2.409288e+09        1.115676e+09        3.963362e+07
MS     1.913862e+08  2.633268e+08      1.276102e+09      7.325973e+08      7.290391e+08        1.985645e+09        9.194981e+08        3.266454e+07
MT     4.530304e+07  9.134880e+07      4.763354e+08      2.734593e+08      2.721311e+08        7.411890e+08        3.432244e+08        1.219281e+07
NC     3.195805e+08  2.450050e+08      2.648622e+09      1.520547e+09      1.513161e+09        4.121317e+09        1.908470e+09        6.779708e+07
ND     1.129847e+08  1.323471e+08      3.275631e+08      1.880506e+08      1.871373e+08        5.096959e+08        2.360263e+08        8.384672e+06
NE     6.482259e+07  1.515772e+08      5.735181e+08      3.292509e+08      3.276517e+08        8.924076e+08        4.132496e+08        1.468041e+07
NH     5.780369e+07  1.626982e+07      3.815343e+08      2.190350e+08      2.179711e+08        5.936763e+08        2.749153e+08        9.766178e+06
NJ     1.392184e+08  6.225025e+07      1.256687e+09      7.214513e+08      7.179472e+08        1.955435e+09        9.055085e+08        3.216757e+07
NM     2.101647e+08  2.167863e+08      6.938183e+08      3.983140e+08      3.963794e+08        1.079598e+09        4.999322e+08        1.775975e+07
NV     4.853167e+07  7.077852e+07      4.698921e+08      2.697602e+08      2.684500e+08        7.311631e+08        3.385817e+08        1.202788e+07
NY     1.890210e+08  1.435057e+08      1.151209e+09      6.608971e+08      6.576871e+08        1.791308e+09        8.295057e+08        2.946762e+07
OH     2.440277e+08  4.471904e+08      2.030424e+09      1.165646e+09      1.159984e+09        3.159388e+09        1.463026e+09        5.197300e+07
OK     3.775326e+08  2.997751e+08      1.169884e+09      6.716186e+08      6.683565e+08        1.820367e+09        8.429624e+08        2.994566e+07
OR     2.891699e+08  1.749139e+08      8.147389e+08      4.677335e+08      4.654611e+08        1.267752e+09        5.870615e+08        2.085496e+07
PA     3.294586e+08  2.572696e+08      1.824831e+09      1.047617e+09      1.042529e+09        2.839481e+09        1.314886e+09        4.671042e+07
RI     4.422404e+06  1.182804e+06      2.071442e+07      1.189194e+07      1.183418e+07        3.223212e+07        1.492582e+07        5.302294e+05
SC     1.549534e+08  1.470339e+08      1.406714e+09      8.075803e+08      8.036578e+08        2.188880e+09        1.013611e+09        3.600783e+07
SD     4.709714e+07  8.051662e+07      3.333537e+08      1.913749e+08      1.904454e+08        5.187061e+08        2.401987e+08        8.532893e+06
TN     1.237422e+08  2.776331e+08      1.712133e+09      9.829178e+08      9.781439e+08        2.664118e+09        1.233681e+09        4.382566e+07
TX     9.161649e+08  1.180461e+09      4.065131e+09      2.333750e+09      2.322415e+09        6.325438e+09        2.929138e+09        1.040556e+08
UT     2.603599e+08  9.851733e+07      4.019591e+08      2.307606e+08      2.296398e+08        6.254578e+08        2.896324e+08        1.028899e+07
VA     9.293980e+07  1.972022e+08      1.650281e+09      9.474093e+08      9.428077e+08        2.567875e+09        1.189113e+09        4.224243e+07
VT     6.342108e+07  1.398115e+07      2.833930e+08      1.626931e+08      1.619028e+08        4.409662e+08        2.041994e+08        7.254044e+06
WA     1.592548e+08  1.122158e+08      9.983549e+08      5.731456e+08      5.703612e+08        1.553463e+09        7.193664e+08        2.555500e+07
WI     3.088494e+08  2.150680e+08      1.682198e+09      9.657327e+08      9.610420e+08        2.617539e+09        1.212111e+09        4.305941e+07
WV     1.267447e+08  8.753606e+07      6.056365e+08      3.476898e+08      3.460010e+08        9.423846e+08        4.363926e+08        1.550255e+07
WY     3.858488e+07  9.787518e+07      3.593472e+08      2.062976e+08      2.052956e+08        5.591527e+08        2.589284e+08        9.198252e+06
DC     0.000000e+00  0.000000e+00      0.000000e+00      0.000000e+00      0.000000e+00        0.000000e+00        0.000000e+00        0.000000e+00

Time estimate

30min