Skip to content

Commit

Permalink
Added capability for EV rebates for low- and middle-income households
Browse files Browse the repository at this point in the history
  • Loading branch information
JoeJimFlood committed May 10, 2024
1 parent d79787e commit 22717b2
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,6 @@ number of household Hybrid,num_hh_Hybrid,"df[df['already_owned_veh'].str.contain
number of household BEV,num_hh_BEV,"df[df['already_owned_veh'].str.contains('BEV', na=False)].groupby('household_id').size().reindex(df.household_id).fillna(0)"
number of household PEV,num_hh_PEV,"df[df['already_owned_veh'].str.contains('PEV', na=False)].groupby('household_id').size().reindex(df.household_id).fillna(0)"
number of household EVs,num_hh_EV,"num_hh_BEV + num_hh_PEV"
household income adjusted to 2017$,income17,"@np.where(df.income < 0, df.income, df.income/1.217)"
household income adjusted to 2017$,income17,"@np.where(df.income < 0, df.income, df.income/1.217)"
PEV Rebate amount,PEV_rebate,"@np.where(df.poverty <= LowIncomeEVRebateCutoff, LowIncomePEVRebate, np.where(df.poverty <= MedIncomeEVRebateCutoff, MedIncomePEVRebate, 0))"
BEV Rebate amount,BEV_rebate,"@np.where(df.poverty <= LowIncomeEVRebateCutoff, LowIncomeBEVRebate, np.where(df.poverty <= MedIncomeEVRebateCutoff, MedIncomeBEVRebate, 0))"
12 changes: 6 additions & 6 deletions src/asim/configs/resident/vehicle_type_choice_op4.csv
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ util_ln_chpc_ev,ln(1+number of chargers per capita in MSA/state),"logged_charger
util_must_select_av,Must select autonomous vehicle if hh owns one,av_ownership & ~is_av & (num_hh_veh_owned == 0),coef_unavail
util_must_select_av,Cannot select AV if hh does not own one,~av_ownership & is_av,coef_unavail
#,income related variables,,
util_cprice0,New Purchase Price (2017$) Segmented by Income,"((income17 < 25000) & (income17 > -1)) * NewPrice",coef_cprice0
util_cprice25,New Purchase Price (2017$) Segmented by Income,"((income17 < 50000) & (income17 >= 25000)) * NewPrice",coef_cprice25
util_cprice50,New Purchase Price (2017$) Segmented by Income,"((income17 < 100000) & (income17 >=50000)) * NewPrice",coef_cprice50
util_cprice100,New Purchase Price (2017$) Segmented by Income,"((income17 < 150000) & (income17 >= 100000)) * NewPrice",coef_cprice100
util_cprice150,New Purchase Price (2017$) Segmented by Income,"(income17 > 150000) * NewPrice",coef_cprice150
util_cpricem,New Purchase Price (2017$) Missing Income,"((income17 < 0) | income17.isna()) * NewPrice",coef_cpricem
util_cprice0,New Purchase Price (2017$) Segmented by Income,"((income17 < 25000) & (income17 > -1)) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cprice0
util_cprice25,New Purchase Price (2017$) Segmented by Income,"((income17 < 50000) & (income17 >= 25000)) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cprice25
util_cprice50,New Purchase Price (2017$) Segmented by Income,"((income17 < 100000) & (income17 >=50000)) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cprice50
util_cprice100,New Purchase Price (2017$) Segmented by Income,"((income17 < 150000) & (income17 >= 100000)) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cprice100
util_cprice150,New Purchase Price (2017$) Segmented by Income,"(income17 > 150000) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cprice150
util_cpricem,New Purchase Price (2017$) Missing Income,"((income17 < 0) | income17.isna()) * (NewPrice - (fuel_type_num_coded==1)*PEV_rebate - (fuel_type_num_coded==5)*BEV_rebate)",coef_cpricem
util_i025_age,Vehicle Age Segmented by Income,"((income17 < 25000) & (income17 > -1)) * age",coef_i025_age
util_i2550_age,Vehicle Age Segmented by Income,"((income17 < 50000) & (income17 >= 25000)) * age",coef_i2550_age
util_i100_age,Vehicle Age Segmented by Income,"((income17 < 150000) & (income17 >= 100000)) * age",coef_i100_age
Expand Down

0 comments on commit 22717b2

Please sign in to comment.