Created
February 3, 2018 02:06
-
-
Save andersonfrailey/285ca68b7e7f54dcc4f4c15c22fc777f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# list to hold plot objects | |
plot_list = [] | |
# loop through each year, creating a plot | |
for year in range(2018, 2028): | |
# advance calculators a year | |
calc.advance_to_year(year) | |
calc.calc_all() | |
calc_base.advance_to_year(year) | |
calc_base.calc_all() | |
# pull the data needed for the graph | |
base_data = calc_base.dataframe(['s006', 'c00100', 'combined']) | |
ref_data = calc.dataframe(['s006', 'c00100', 'combined']) | |
raw_data = pd.DataFrame({'s006': base_data['s006'], | |
'c00100': base_data['c00100'], | |
'change': (ref_data['combined'] - base_data['combined'])}) | |
# find the percentages falling in each category for each income group | |
cds_all = find_perc(raw_data, 'All Taxpayers') | |
cds1 = find_perc(raw_data[raw_data.c00100 < 10000], 'Less than $10K') | |
cds2 = find_perc(raw_data[(raw_data.c00100 >= 10000) & (raw_data.c00100 < 20000)], '$10K to $20K') | |
cds3 = find_perc(raw_data[(raw_data.c00100 >= 20000) & (raw_data.c00100 < 30000)], '$20K to $30K') | |
cds4 = find_perc(raw_data[(raw_data.c00100 >= 30000) & (raw_data.c00100 < 40000)], '$30K to $40K') | |
cds5 = find_perc(raw_data[(raw_data.c00100 >= 40000) & (raw_data.c00100 < 50000)], '$40K to $50K') | |
cds6 = find_perc(raw_data[(raw_data.c00100 >= 50000) & (raw_data.c00100 < 75000)], '$50K to $75K') | |
cds7 = find_perc(raw_data[(raw_data.c00100 >= 75000) & (raw_data.c00100 < 100000)], '$75K to $100K') | |
cds8 = find_perc(raw_data[(raw_data.c00100 >= 100000) & (raw_data.c00100 < 200000)], '$100K to $200K') | |
cds9 = find_perc(raw_data[(raw_data.c00100 >= 200000) & (raw_data.c00100 < 500000)], '$200K to $500K') | |
cds10 = find_perc(raw_data[(raw_data.c00100 >= 500000) & (raw_data.c00100 < 1000000)], '$500K to $1M') | |
cds11 = find_perc(raw_data[(raw_data.c00100 >= 1000000)], '$1M or More') | |
# create a plot using all of the data collected | |
cds_list = [cds_all, cds11, cds10, cds9, cds8, cds7, cds6, cds5, cds4, cds3, cds2, cds1] | |
new_plot = plot(cds_list, year) | |
plot_list.append(new_plot) | |
show(column(plot_list)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment