Spaces:
Sleeping
Sleeping
Upload 8 files
Browse files- README.md +19 -13
- US_Population.ipynb +0 -0
- requirements.txt +4 -0
- streamlit_app.py +276 -0
- streamlit_app_no_css.py +227 -0
- us-population-2010-2019-reshaped.csv +521 -0
- us-population-2010-2019-states-code.csv +53 -0
- us-population-2010-2019.csv +53 -0
README.md
CHANGED
@@ -1,13 +1,19 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# 🏂 US Population Dashboard
|
2 |
+
|
3 |
+
A dashboard web app template built in Python using Streamlit.
|
4 |
+
|
5 |
+
## Demo App
|
6 |
+
|
7 |
+
[](https://population-dashboard.streamlit.app/)
|
8 |
+
|
9 |
+
## Colab notebook
|
10 |
+
[](https://github.com/dataprofessor/population-dashboard/blob/master/US_Population.ipynb)
|
11 |
+
|
12 |
+
## Prerequisite libraries
|
13 |
+
Here are the Python libraries used in the creation of this dashboard app
|
14 |
+
|
15 |
+
## Data source
|
16 |
+
US Population data spanning the duration of 2010-2019 was obtained from the [U.S. Census Bureau](https://www.census.gov/data/datasets/time-series/demo/popest/2010s-state-total.html).
|
17 |
+
|
18 |
+
## Reference
|
19 |
+
A talk entitled [_Crafting a Dashboard App in Python using Streamlit_](https://budapestbi.hu/2023/hu/program/speakers/chanin-nantasenamat/) showing how to build this app is given at the [Budapest BI Forum (Data Visualization track)](https://budapestbi.hu/2023/hu/en/program-data-visualization-track/) on November 22, 2023.
|
US_Population.ipynb
ADDED
The diff for this file is too large to render.
See raw diff
|
|
requirements.txt
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
streamlit
|
2 |
+
pandas
|
3 |
+
altair
|
4 |
+
plotly
|
streamlit_app.py
ADDED
@@ -0,0 +1,276 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#######################
|
2 |
+
# Import libraries
|
3 |
+
import streamlit as st
|
4 |
+
import pandas as pd
|
5 |
+
import altair as alt
|
6 |
+
import plotly.express as px
|
7 |
+
|
8 |
+
#######################
|
9 |
+
# Page configuration
|
10 |
+
st.set_page_config(
|
11 |
+
page_title="US Population Dashboard",
|
12 |
+
page_icon="🏂",
|
13 |
+
layout="wide",
|
14 |
+
initial_sidebar_state="expanded")
|
15 |
+
|
16 |
+
alt.themes.enable("dark")
|
17 |
+
|
18 |
+
#######################
|
19 |
+
# CSS styling
|
20 |
+
st.markdown("""
|
21 |
+
<style>
|
22 |
+
|
23 |
+
[data-testid="block-container"] {
|
24 |
+
padding-left: 2rem;
|
25 |
+
padding-right: 2rem;
|
26 |
+
padding-top: 1rem;
|
27 |
+
padding-bottom: 0rem;
|
28 |
+
margin-bottom: -7rem;
|
29 |
+
}
|
30 |
+
|
31 |
+
[data-testid="stVerticalBlock"] {
|
32 |
+
padding-left: 0rem;
|
33 |
+
padding-right: 0rem;
|
34 |
+
}
|
35 |
+
|
36 |
+
[data-testid="stMetric"] {
|
37 |
+
background-color: #393939;
|
38 |
+
text-align: center;
|
39 |
+
padding: 15px 0;
|
40 |
+
}
|
41 |
+
|
42 |
+
[data-testid="stMetricLabel"] {
|
43 |
+
display: flex;
|
44 |
+
justify-content: center;
|
45 |
+
align-items: center;
|
46 |
+
}
|
47 |
+
|
48 |
+
[data-testid="stMetricDeltaIcon-Up"] {
|
49 |
+
position: relative;
|
50 |
+
left: 38%;
|
51 |
+
-webkit-transform: translateX(-50%);
|
52 |
+
-ms-transform: translateX(-50%);
|
53 |
+
transform: translateX(-50%);
|
54 |
+
}
|
55 |
+
|
56 |
+
[data-testid="stMetricDeltaIcon-Down"] {
|
57 |
+
position: relative;
|
58 |
+
left: 38%;
|
59 |
+
-webkit-transform: translateX(-50%);
|
60 |
+
-ms-transform: translateX(-50%);
|
61 |
+
transform: translateX(-50%);
|
62 |
+
}
|
63 |
+
|
64 |
+
</style>
|
65 |
+
""", unsafe_allow_html=True)
|
66 |
+
|
67 |
+
|
68 |
+
#######################
|
69 |
+
# Load data
|
70 |
+
df_reshaped = pd.read_csv('us-population-2010-2019-reshaped.csv')
|
71 |
+
|
72 |
+
|
73 |
+
#######################
|
74 |
+
# Sidebar
|
75 |
+
with st.sidebar:
|
76 |
+
st.title('🏂 US Population Dashboard')
|
77 |
+
|
78 |
+
year_list = list(df_reshaped.year.unique())[::-1]
|
79 |
+
|
80 |
+
selected_year = st.selectbox('Select a year', year_list)
|
81 |
+
df_selected_year = df_reshaped[df_reshaped.year == selected_year]
|
82 |
+
df_selected_year_sorted = df_selected_year.sort_values(by="population", ascending=False)
|
83 |
+
|
84 |
+
color_theme_list = ['blues', 'cividis', 'greens', 'inferno', 'magma', 'plasma', 'reds', 'rainbow', 'turbo', 'viridis']
|
85 |
+
selected_color_theme = st.selectbox('Select a color theme', color_theme_list)
|
86 |
+
|
87 |
+
|
88 |
+
#######################
|
89 |
+
# Plots
|
90 |
+
|
91 |
+
# Heatmap
|
92 |
+
def make_heatmap(input_df, input_y, input_x, input_color, input_color_theme):
|
93 |
+
heatmap = alt.Chart(input_df).mark_rect().encode(
|
94 |
+
y=alt.Y(f'{input_y}:O', axis=alt.Axis(title="Year", titleFontSize=18, titlePadding=15, titleFontWeight=900, labelAngle=0)),
|
95 |
+
x=alt.X(f'{input_x}:O', axis=alt.Axis(title="", titleFontSize=18, titlePadding=15, titleFontWeight=900)),
|
96 |
+
color=alt.Color(f'max({input_color}):Q',
|
97 |
+
legend=None,
|
98 |
+
scale=alt.Scale(scheme=input_color_theme)),
|
99 |
+
stroke=alt.value('black'),
|
100 |
+
strokeWidth=alt.value(0.25),
|
101 |
+
).properties(width=900
|
102 |
+
).configure_axis(
|
103 |
+
labelFontSize=12,
|
104 |
+
titleFontSize=12
|
105 |
+
)
|
106 |
+
# height=300
|
107 |
+
return heatmap
|
108 |
+
|
109 |
+
# Choropleth map
|
110 |
+
def make_choropleth(input_df, input_id, input_column, input_color_theme):
|
111 |
+
choropleth = px.choropleth(input_df, locations=input_id, color=input_column, locationmode="USA-states",
|
112 |
+
color_continuous_scale=input_color_theme,
|
113 |
+
range_color=(0, max(df_selected_year.population)),
|
114 |
+
scope="usa",
|
115 |
+
labels={'population':'Population'}
|
116 |
+
)
|
117 |
+
choropleth.update_layout(
|
118 |
+
template='plotly_dark',
|
119 |
+
plot_bgcolor='rgba(0, 0, 0, 0)',
|
120 |
+
paper_bgcolor='rgba(0, 0, 0, 0)',
|
121 |
+
margin=dict(l=0, r=0, t=0, b=0),
|
122 |
+
height=350
|
123 |
+
)
|
124 |
+
return choropleth
|
125 |
+
|
126 |
+
|
127 |
+
# Donut chart
|
128 |
+
def make_donut(input_response, input_text, input_color):
|
129 |
+
if input_color == 'blue':
|
130 |
+
chart_color = ['#29b5e8', '#155F7A']
|
131 |
+
if input_color == 'green':
|
132 |
+
chart_color = ['#27AE60', '#12783D']
|
133 |
+
if input_color == 'orange':
|
134 |
+
chart_color = ['#F39C12', '#875A12']
|
135 |
+
if input_color == 'red':
|
136 |
+
chart_color = ['#E74C3C', '#781F16']
|
137 |
+
|
138 |
+
source = pd.DataFrame({
|
139 |
+
"Topic": ['', input_text],
|
140 |
+
"% value": [100-input_response, input_response]
|
141 |
+
})
|
142 |
+
source_bg = pd.DataFrame({
|
143 |
+
"Topic": ['', input_text],
|
144 |
+
"% value": [100, 0]
|
145 |
+
})
|
146 |
+
|
147 |
+
plot = alt.Chart(source).mark_arc(innerRadius=45, cornerRadius=25).encode(
|
148 |
+
theta="% value",
|
149 |
+
color= alt.Color("Topic:N",
|
150 |
+
scale=alt.Scale(
|
151 |
+
#domain=['A', 'B'],
|
152 |
+
domain=[input_text, ''],
|
153 |
+
# range=['#29b5e8', '#155F7A']), # 31333F
|
154 |
+
range=chart_color),
|
155 |
+
legend=None),
|
156 |
+
).properties(width=130, height=130)
|
157 |
+
|
158 |
+
text = plot.mark_text(align='center', color="#29b5e8", font="Lato", fontSize=32, fontWeight=700, fontStyle="italic").encode(text=alt.value(f'{input_response} %'))
|
159 |
+
plot_bg = alt.Chart(source_bg).mark_arc(innerRadius=45, cornerRadius=20).encode(
|
160 |
+
theta="% value",
|
161 |
+
color= alt.Color("Topic:N",
|
162 |
+
scale=alt.Scale(
|
163 |
+
# domain=['A', 'B'],
|
164 |
+
domain=[input_text, ''],
|
165 |
+
range=chart_color), # 31333F
|
166 |
+
legend=None),
|
167 |
+
).properties(width=130, height=130)
|
168 |
+
return plot_bg + plot + text
|
169 |
+
|
170 |
+
# Convert population to text
|
171 |
+
def format_number(num):
|
172 |
+
if num > 1000000:
|
173 |
+
if not num % 1000000:
|
174 |
+
return f'{num // 1000000} M'
|
175 |
+
return f'{round(num / 1000000, 1)} M'
|
176 |
+
return f'{num // 1000} K'
|
177 |
+
|
178 |
+
# Calculation year-over-year population migrations
|
179 |
+
def calculate_population_difference(input_df, input_year):
|
180 |
+
selected_year_data = input_df[input_df['year'] == input_year].reset_index()
|
181 |
+
previous_year_data = input_df[input_df['year'] == input_year - 1].reset_index()
|
182 |
+
selected_year_data['population_difference'] = selected_year_data.population.sub(previous_year_data.population, fill_value=0)
|
183 |
+
return pd.concat([selected_year_data.states, selected_year_data.id, selected_year_data.population, selected_year_data.population_difference], axis=1).sort_values(by="population_difference", ascending=False)
|
184 |
+
|
185 |
+
|
186 |
+
#######################
|
187 |
+
# Dashboard Main Panel
|
188 |
+
col = st.columns((1.5, 4.5, 2), gap='medium')
|
189 |
+
|
190 |
+
with col[0]:
|
191 |
+
st.markdown('#### Gains/Losses')
|
192 |
+
|
193 |
+
df_population_difference_sorted = calculate_population_difference(df_reshaped, selected_year)
|
194 |
+
|
195 |
+
if selected_year > 2010:
|
196 |
+
first_state_name = df_population_difference_sorted.states.iloc[0]
|
197 |
+
first_state_population = format_number(df_population_difference_sorted.population.iloc[0])
|
198 |
+
first_state_delta = format_number(df_population_difference_sorted.population_difference.iloc[0])
|
199 |
+
else:
|
200 |
+
first_state_name = '-'
|
201 |
+
first_state_population = '-'
|
202 |
+
first_state_delta = ''
|
203 |
+
st.metric(label=first_state_name, value=first_state_population, delta=first_state_delta)
|
204 |
+
|
205 |
+
if selected_year > 2010:
|
206 |
+
last_state_name = df_population_difference_sorted.states.iloc[-1]
|
207 |
+
last_state_population = format_number(df_population_difference_sorted.population.iloc[-1])
|
208 |
+
last_state_delta = format_number(df_population_difference_sorted.population_difference.iloc[-1])
|
209 |
+
else:
|
210 |
+
last_state_name = '-'
|
211 |
+
last_state_population = '-'
|
212 |
+
last_state_delta = ''
|
213 |
+
st.metric(label=last_state_name, value=last_state_population, delta=last_state_delta)
|
214 |
+
|
215 |
+
|
216 |
+
st.markdown('#### States Migration')
|
217 |
+
|
218 |
+
if selected_year > 2010:
|
219 |
+
# Filter states with population difference > 50000
|
220 |
+
# df_greater_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference_absolute > 50000]
|
221 |
+
df_greater_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference > 50000]
|
222 |
+
df_less_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference < -50000]
|
223 |
+
|
224 |
+
# % of States with population difference > 50000
|
225 |
+
states_migration_greater = round((len(df_greater_50000)/df_population_difference_sorted.states.nunique())*100)
|
226 |
+
states_migration_less = round((len(df_less_50000)/df_population_difference_sorted.states.nunique())*100)
|
227 |
+
donut_chart_greater = make_donut(states_migration_greater, 'Inbound Migration', 'green')
|
228 |
+
donut_chart_less = make_donut(states_migration_less, 'Outbound Migration', 'red')
|
229 |
+
else:
|
230 |
+
states_migration_greater = 0
|
231 |
+
states_migration_less = 0
|
232 |
+
donut_chart_greater = make_donut(states_migration_greater, 'Inbound Migration', 'green')
|
233 |
+
donut_chart_less = make_donut(states_migration_less, 'Outbound Migration', 'red')
|
234 |
+
|
235 |
+
migrations_col = st.columns((0.2, 1, 0.2))
|
236 |
+
with migrations_col[1]:
|
237 |
+
st.write('Inbound')
|
238 |
+
st.altair_chart(donut_chart_greater)
|
239 |
+
st.write('Outbound')
|
240 |
+
st.altair_chart(donut_chart_less)
|
241 |
+
|
242 |
+
with col[1]:
|
243 |
+
st.markdown('#### Total Population')
|
244 |
+
|
245 |
+
choropleth = make_choropleth(df_selected_year, 'states_code', 'population', selected_color_theme)
|
246 |
+
st.plotly_chart(choropleth, use_container_width=True)
|
247 |
+
|
248 |
+
heatmap = make_heatmap(df_reshaped, 'year', 'states', 'population', selected_color_theme)
|
249 |
+
st.altair_chart(heatmap, use_container_width=True)
|
250 |
+
|
251 |
+
|
252 |
+
with col[2]:
|
253 |
+
st.markdown('#### Top States')
|
254 |
+
|
255 |
+
st.dataframe(df_selected_year_sorted,
|
256 |
+
column_order=("states", "population"),
|
257 |
+
hide_index=True,
|
258 |
+
width=None,
|
259 |
+
column_config={
|
260 |
+
"states": st.column_config.TextColumn(
|
261 |
+
"States",
|
262 |
+
),
|
263 |
+
"population": st.column_config.ProgressColumn(
|
264 |
+
"Population",
|
265 |
+
format="%f",
|
266 |
+
min_value=0,
|
267 |
+
max_value=max(df_selected_year_sorted.population),
|
268 |
+
)}
|
269 |
+
)
|
270 |
+
|
271 |
+
with st.expander('About', expanded=True):
|
272 |
+
st.write('''
|
273 |
+
- Data: [U.S. Census Bureau](https://www.census.gov/data/datasets/time-series/demo/popest/2010s-state-total.html).
|
274 |
+
- :orange[**Gains/Losses**]: states with high inbound/ outbound migration for selected year
|
275 |
+
- :orange[**States Migration**]: percentage of states with annual inbound/ outbound migration > 50,000
|
276 |
+
''')
|
streamlit_app_no_css.py
ADDED
@@ -0,0 +1,227 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#######################
|
2 |
+
# Import libraries
|
3 |
+
import streamlit as st
|
4 |
+
import pandas as pd
|
5 |
+
import altair as alt
|
6 |
+
import plotly.express as px
|
7 |
+
|
8 |
+
#######################
|
9 |
+
# Page configuration
|
10 |
+
st.set_page_config(
|
11 |
+
page_title="US Population Dashboard",
|
12 |
+
page_icon="🏂",
|
13 |
+
layout="wide",
|
14 |
+
initial_sidebar_state="expanded")
|
15 |
+
|
16 |
+
alt.themes.enable("dark")
|
17 |
+
|
18 |
+
|
19 |
+
#######################
|
20 |
+
# Load data
|
21 |
+
df_reshaped = pd.read_csv('data/us-population-2010-2019-reshaped.csv')
|
22 |
+
|
23 |
+
|
24 |
+
#######################
|
25 |
+
# Sidebar
|
26 |
+
with st.sidebar:
|
27 |
+
st.title('🏂 US Population Dashboard')
|
28 |
+
|
29 |
+
year_list = list(df_reshaped.year.unique())[::-1]
|
30 |
+
|
31 |
+
selected_year = st.selectbox('Select a year', year_list)
|
32 |
+
df_selected_year = df_reshaped[df_reshaped.year == selected_year]
|
33 |
+
df_selected_year_sorted = df_selected_year.sort_values(by="population", ascending=False)
|
34 |
+
|
35 |
+
color_theme_list = ['blues', 'cividis', 'greens', 'inferno', 'magma', 'plasma', 'reds', 'rainbow', 'turbo', 'viridis']
|
36 |
+
selected_color_theme = st.selectbox('Select a color theme', color_theme_list)
|
37 |
+
|
38 |
+
|
39 |
+
#######################
|
40 |
+
# Plots
|
41 |
+
|
42 |
+
# Heatmap
|
43 |
+
def make_heatmap(input_df, input_y, input_x, input_color, input_color_theme):
|
44 |
+
heatmap = alt.Chart(input_df).mark_rect().encode(
|
45 |
+
y=alt.Y(f'{input_y}:O', axis=alt.Axis(title="Year", titleFontSize=18, titlePadding=15, titleFontWeight=900, labelAngle=0)),
|
46 |
+
x=alt.X(f'{input_x}:O', axis=alt.Axis(title="", titleFontSize=18, titlePadding=15, titleFontWeight=900)),
|
47 |
+
color=alt.Color(f'max({input_color}):Q',
|
48 |
+
legend=None,
|
49 |
+
scale=alt.Scale(scheme=input_color_theme)),
|
50 |
+
stroke=alt.value('black'),
|
51 |
+
strokeWidth=alt.value(0.25),
|
52 |
+
).properties(width=900
|
53 |
+
).configure_axis(
|
54 |
+
labelFontSize=12,
|
55 |
+
titleFontSize=12
|
56 |
+
)
|
57 |
+
# height=300
|
58 |
+
return heatmap
|
59 |
+
|
60 |
+
# Choropleth map
|
61 |
+
def make_choropleth(input_df, input_id, input_column, input_color_theme):
|
62 |
+
choropleth = px.choropleth(input_df, locations=input_id, color=input_column, locationmode="USA-states",
|
63 |
+
color_continuous_scale=input_color_theme,
|
64 |
+
range_color=(0, max(df_selected_year.population)),
|
65 |
+
scope="usa",
|
66 |
+
labels={'population':'Population'}
|
67 |
+
)
|
68 |
+
choropleth.update_layout(
|
69 |
+
template='plotly_dark',
|
70 |
+
plot_bgcolor='rgba(0, 0, 0, 0)',
|
71 |
+
paper_bgcolor='rgba(0, 0, 0, 0)',
|
72 |
+
margin=dict(l=0, r=0, t=0, b=0),
|
73 |
+
height=350
|
74 |
+
)
|
75 |
+
return choropleth
|
76 |
+
|
77 |
+
|
78 |
+
# Donut chart
|
79 |
+
def make_donut(input_response, input_text, input_color):
|
80 |
+
if input_color == 'blue':
|
81 |
+
chart_color = ['#29b5e8', '#155F7A']
|
82 |
+
if input_color == 'green':
|
83 |
+
chart_color = ['#27AE60', '#12783D']
|
84 |
+
if input_color == 'orange':
|
85 |
+
chart_color = ['#F39C12', '#875A12']
|
86 |
+
if input_color == 'red':
|
87 |
+
chart_color = ['#E74C3C', '#781F16']
|
88 |
+
|
89 |
+
source = pd.DataFrame({
|
90 |
+
"Topic": ['', input_text],
|
91 |
+
"% value": [100-input_response, input_response]
|
92 |
+
})
|
93 |
+
source_bg = pd.DataFrame({
|
94 |
+
"Topic": ['', input_text],
|
95 |
+
"% value": [100, 0]
|
96 |
+
})
|
97 |
+
|
98 |
+
plot = alt.Chart(source).mark_arc(innerRadius=45, cornerRadius=25).encode(
|
99 |
+
theta="% value",
|
100 |
+
color= alt.Color("Topic:N",
|
101 |
+
scale=alt.Scale(
|
102 |
+
#domain=['A', 'B'],
|
103 |
+
domain=[input_text, ''],
|
104 |
+
# range=['#29b5e8', '#155F7A']), # 31333F
|
105 |
+
range=chart_color),
|
106 |
+
legend=None),
|
107 |
+
).properties(width=130, height=130)
|
108 |
+
|
109 |
+
text = plot.mark_text(align='center', color="#29b5e8", font="Lato", fontSize=32, fontWeight=700, fontStyle="italic").encode(text=alt.value(f'{input_response} %'))
|
110 |
+
plot_bg = alt.Chart(source_bg).mark_arc(innerRadius=45, cornerRadius=20).encode(
|
111 |
+
theta="% value",
|
112 |
+
color= alt.Color("Topic:N",
|
113 |
+
scale=alt.Scale(
|
114 |
+
# domain=['A', 'B'],
|
115 |
+
domain=[input_text, ''],
|
116 |
+
range=chart_color), # 31333F
|
117 |
+
legend=None),
|
118 |
+
).properties(width=130, height=130)
|
119 |
+
return plot_bg + plot + text
|
120 |
+
|
121 |
+
# Convert population to text
|
122 |
+
def format_number(num):
|
123 |
+
if num > 1000000:
|
124 |
+
if not num % 1000000:
|
125 |
+
return f'{num // 1000000} M'
|
126 |
+
return f'{round(num / 1000000, 1)} M'
|
127 |
+
return f'{num // 1000} K'
|
128 |
+
|
129 |
+
# Calculation year-over-year population migrations
|
130 |
+
def calculate_population_difference(input_df, input_year):
|
131 |
+
selected_year_data = input_df[input_df['year'] == input_year].reset_index()
|
132 |
+
previous_year_data = input_df[input_df['year'] == input_year - 1].reset_index()
|
133 |
+
selected_year_data['population_difference'] = selected_year_data.population.sub(previous_year_data.population, fill_value=0)
|
134 |
+
return pd.concat([selected_year_data.states, selected_year_data.id, selected_year_data.population, selected_year_data.population_difference], axis=1).sort_values(by="population_difference", ascending=False)
|
135 |
+
|
136 |
+
|
137 |
+
#######################
|
138 |
+
# Dashboard Main Panel
|
139 |
+
col = st.columns((1.5, 4.5, 2), gap='medium')
|
140 |
+
|
141 |
+
with col[0]:
|
142 |
+
st.markdown('#### Gains/Losses')
|
143 |
+
|
144 |
+
df_population_difference_sorted = calculate_population_difference(df_reshaped, selected_year)
|
145 |
+
|
146 |
+
if selected_year > 2010:
|
147 |
+
first_state_name = df_population_difference_sorted.states.iloc[0]
|
148 |
+
first_state_population = format_number(df_population_difference_sorted.population.iloc[0])
|
149 |
+
first_state_delta = format_number(df_population_difference_sorted.population_difference.iloc[0])
|
150 |
+
else:
|
151 |
+
first_state_name = '-'
|
152 |
+
first_state_population = '-'
|
153 |
+
first_state_delta = ''
|
154 |
+
st.metric(label=first_state_name, value=first_state_population, delta=first_state_delta)
|
155 |
+
|
156 |
+
if selected_year > 2010:
|
157 |
+
last_state_name = df_population_difference_sorted.states.iloc[-1]
|
158 |
+
last_state_population = format_number(df_population_difference_sorted.population.iloc[-1])
|
159 |
+
last_state_delta = format_number(df_population_difference_sorted.population_difference.iloc[-1])
|
160 |
+
else:
|
161 |
+
last_state_name = '-'
|
162 |
+
last_state_population = '-'
|
163 |
+
last_state_delta = ''
|
164 |
+
st.metric(label=last_state_name, value=last_state_population, delta=last_state_delta)
|
165 |
+
|
166 |
+
|
167 |
+
st.markdown('#### States Migration')
|
168 |
+
|
169 |
+
if selected_year > 2010:
|
170 |
+
# Filter states with population difference > 50000
|
171 |
+
# df_greater_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference_absolute > 50000]
|
172 |
+
df_greater_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference > 50000]
|
173 |
+
df_less_50000 = df_population_difference_sorted[df_population_difference_sorted.population_difference < -50000]
|
174 |
+
|
175 |
+
# % of States with population difference > 50000
|
176 |
+
states_migration_greater = round((len(df_greater_50000)/df_population_difference_sorted.states.nunique())*100)
|
177 |
+
states_migration_less = round((len(df_less_50000)/df_population_difference_sorted.states.nunique())*100)
|
178 |
+
donut_chart_greater = make_donut(states_migration_greater, 'Inbound Migration', 'green')
|
179 |
+
donut_chart_less = make_donut(states_migration_less, 'Outbound Migration', 'red')
|
180 |
+
else:
|
181 |
+
states_migration_greater = 0
|
182 |
+
states_migration_less = 0
|
183 |
+
donut_chart_greater = make_donut(states_migration_greater, 'Inbound Migration', 'green')
|
184 |
+
donut_chart_less = make_donut(states_migration_less, 'Outbound Migration', 'red')
|
185 |
+
|
186 |
+
migrations_col = st.columns((0.2, 1, 0.2))
|
187 |
+
with migrations_col[1]:
|
188 |
+
st.write('Inbound')
|
189 |
+
st.altair_chart(donut_chart_greater)
|
190 |
+
st.write('Outbound')
|
191 |
+
st.altair_chart(donut_chart_less)
|
192 |
+
|
193 |
+
with col[1]:
|
194 |
+
st.markdown('#### Total Population')
|
195 |
+
|
196 |
+
choropleth = make_choropleth(df_selected_year, 'states_code', 'population', selected_color_theme)
|
197 |
+
st.plotly_chart(choropleth, use_container_width=True)
|
198 |
+
|
199 |
+
heatmap = make_heatmap(df_reshaped, 'year', 'states', 'population', selected_color_theme)
|
200 |
+
st.altair_chart(heatmap, use_container_width=True)
|
201 |
+
|
202 |
+
|
203 |
+
with col[2]:
|
204 |
+
st.markdown('#### Top States')
|
205 |
+
|
206 |
+
st.dataframe(df_selected_year_sorted,
|
207 |
+
column_order=("states", "population"),
|
208 |
+
hide_index=True,
|
209 |
+
width=None,
|
210 |
+
column_config={
|
211 |
+
"states": st.column_config.TextColumn(
|
212 |
+
"States",
|
213 |
+
),
|
214 |
+
"population": st.column_config.ProgressColumn(
|
215 |
+
"Population",
|
216 |
+
format="%f",
|
217 |
+
min_value=0,
|
218 |
+
max_value=max(df_selected_year_sorted.population),
|
219 |
+
)}
|
220 |
+
)
|
221 |
+
|
222 |
+
with st.expander('About', expanded=True):
|
223 |
+
st.write('''
|
224 |
+
- Data: [U.S. Census Bureau](https://www.census.gov/data/datasets/time-series/demo/popest/2010s-state-total.html).
|
225 |
+
- :orange[**Gains/Losses**]: states with high inbound/ outbound migration for selected year
|
226 |
+
- :orange[**States Migration**]: percentage of states with annual inbound/ outbound migration > 50,000
|
227 |
+
''')
|
us-population-2010-2019-reshaped.csv
ADDED
@@ -0,0 +1,521 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
,states,states_code,id,year,population
|
2 |
+
0,Alabama,AL,1,2010,4785437
|
3 |
+
1,Alaska,AK,2,2010,713910
|
4 |
+
2,Arizona,AZ,4,2010,6407172
|
5 |
+
3,Arkansas,AR,5,2010,2921964
|
6 |
+
4,California,CA,6,2010,37319502
|
7 |
+
5,Colorado,CO,8,2010,5047349
|
8 |
+
6,Connecticut,CT,9,2010,3579114
|
9 |
+
7,Delaware,DE,10,2010,899593
|
10 |
+
8,District of Columbia,DC,11,2010,605226
|
11 |
+
9,Florida,FL,12,2010,18845537
|
12 |
+
10,Georgia,GA,13,2010,9711881
|
13 |
+
11,Hawaii,HI,15,2010,1363963
|
14 |
+
12,Idaho,ID,16,2010,1570746
|
15 |
+
13,Illinois,IL,17,2010,12840503
|
16 |
+
14,Indiana,IN,18,2010,6490432
|
17 |
+
15,Iowa,IA,19,2010,3050745
|
18 |
+
16,Kansas,KS,20,2010,2858190
|
19 |
+
17,Kentucky,KY,21,2010,4348181
|
20 |
+
18,Louisiana,LA,22,2010,4544532
|
21 |
+
19,Maine,ME,23,2010,1327629
|
22 |
+
20,Maryland,MD,24,2010,5788645
|
23 |
+
21,Massachusetts,MA,25,2010,6566307
|
24 |
+
22,Michigan,MI,26,2010,9877510
|
25 |
+
23,Minnesota,MN,27,2010,5310828
|
26 |
+
24,Mississippi,MS,28,2010,2970548
|
27 |
+
25,Missouri,MO,29,2010,5995974
|
28 |
+
26,Montana,MT,30,2010,990697
|
29 |
+
27,Nebraska,NE,31,2010,1829542
|
30 |
+
28,Nevada,NV,32,2010,2702405
|
31 |
+
29,New Hampshire,NH,33,2010,1316762
|
32 |
+
30,New Jersey,NJ,34,2010,8799446
|
33 |
+
31,New Mexico,NM,35,2010,2064552
|
34 |
+
32,New York,NY,36,2010,19399878
|
35 |
+
33,North Carolina,NC,37,2010,9574323
|
36 |
+
34,North Dakota,ND,38,2010,674715
|
37 |
+
35,Ohio,OH,39,2010,11539336
|
38 |
+
36,Oklahoma,OK,40,2010,3759944
|
39 |
+
37,Oregon,OR,41,2010,3837491
|
40 |
+
38,Pennsylvania,PA,42,2010,12711160
|
41 |
+
39,Rhode Island,RI,44,2010,1053959
|
42 |
+
40,South Carolina,SC,45,2010,4635649
|
43 |
+
41,South Dakota,SD,46,2010,816166
|
44 |
+
42,Tennessee,TN,47,2010,6355311
|
45 |
+
43,Texas,TX,48,2010,25241971
|
46 |
+
44,Utah,UT,49,2010,2775332
|
47 |
+
45,Vermont,VT,50,2010,625879
|
48 |
+
46,Virginia,VA,51,2010,8023699
|
49 |
+
47,Washington,WA,53,2010,6742830
|
50 |
+
48,West Virginia,WV,54,2010,1854239
|
51 |
+
49,Wisconsin,WI,55,2010,5690475
|
52 |
+
50,Wyoming,WY,56,2010,564487
|
53 |
+
51,Puerto Rico,PR,72,2010,3721525
|
54 |
+
52,Alabama,AL,1,2011,4799069
|
55 |
+
53,Alaska,AK,2,2011,722128
|
56 |
+
54,Arizona,AZ,4,2011,6472643
|
57 |
+
55,Arkansas,AR,5,2011,2940667
|
58 |
+
56,California,CA,6,2011,37638369
|
59 |
+
57,Colorado,CO,8,2011,5121108
|
60 |
+
58,Connecticut,CT,9,2011,3588283
|
61 |
+
59,Delaware,DE,10,2011,907381
|
62 |
+
60,District of Columbia,DC,11,2011,619800
|
63 |
+
61,Florida,FL,12,2011,19053237
|
64 |
+
62,Georgia,GA,13,2011,9802431
|
65 |
+
63,Hawaii,HI,15,2011,1379329
|
66 |
+
64,Idaho,ID,16,2011,1583910
|
67 |
+
65,Illinois,IL,17,2011,12867454
|
68 |
+
66,Indiana,IN,18,2011,6516528
|
69 |
+
67,Iowa,IA,19,2011,3066336
|
70 |
+
68,Kansas,KS,20,2011,2869225
|
71 |
+
69,Kentucky,KY,21,2011,4369821
|
72 |
+
70,Louisiana,LA,22,2011,4575625
|
73 |
+
71,Maine,ME,23,2011,1328284
|
74 |
+
72,Maryland,MD,24,2011,5839419
|
75 |
+
73,Massachusetts,MA,25,2011,6613583
|
76 |
+
74,Michigan,MI,26,2011,9882412
|
77 |
+
75,Minnesota,MN,27,2011,5346143
|
78 |
+
76,Mississippi,MS,28,2011,2978731
|
79 |
+
77,Missouri,MO,29,2011,6010275
|
80 |
+
78,Montana,MT,30,2011,997316
|
81 |
+
79,Nebraska,NE,31,2011,1840672
|
82 |
+
80,Nevada,NV,32,2011,2712730
|
83 |
+
81,New Hampshire,NH,33,2011,1320202
|
84 |
+
82,New Jersey,NJ,34,2011,8828117
|
85 |
+
83,New Mexico,NM,35,2011,2080450
|
86 |
+
84,New York,NY,36,2011,19499241
|
87 |
+
85,North Carolina,NC,37,2011,9657592
|
88 |
+
86,North Dakota,ND,38,2011,685225
|
89 |
+
87,Ohio,OH,39,2011,11544663
|
90 |
+
88,Oklahoma,OK,40,2011,3788379
|
91 |
+
89,Oregon,OR,41,2011,3872036
|
92 |
+
90,Pennsylvania,PA,42,2011,12745815
|
93 |
+
91,Rhode Island,RI,44,2011,1053649
|
94 |
+
92,South Carolina,SC,45,2011,4671994
|
95 |
+
93,South Dakota,SD,46,2011,823579
|
96 |
+
94,Tennessee,TN,47,2011,6399291
|
97 |
+
95,Texas,TX,48,2011,25645629
|
98 |
+
96,Utah,UT,49,2011,2814384
|
99 |
+
97,Vermont,VT,50,2011,627049
|
100 |
+
98,Virginia,VA,51,2011,8101155
|
101 |
+
99,Washington,WA,53,2011,6826627
|
102 |
+
100,West Virginia,WV,54,2011,1856301
|
103 |
+
101,Wisconsin,WI,55,2011,5705288
|
104 |
+
102,Wyoming,WY,56,2011,567299
|
105 |
+
103,Puerto Rico,PR,72,2011,3678732
|
106 |
+
104,Alabama,AL,1,2012,4815588
|
107 |
+
105,Alaska,AK,2,2012,730443
|
108 |
+
106,Arizona,AZ,4,2012,6554978
|
109 |
+
107,Arkansas,AR,5,2012,2952164
|
110 |
+
108,California,CA,6,2012,37948800
|
111 |
+
109,Colorado,CO,8,2012,5192647
|
112 |
+
110,Connecticut,CT,9,2012,3594547
|
113 |
+
111,Delaware,DE,10,2012,915179
|
114 |
+
112,District of Columbia,DC,11,2012,634924
|
115 |
+
113,Florida,FL,12,2012,19297822
|
116 |
+
114,Georgia,GA,13,2012,9901430
|
117 |
+
115,Hawaii,HI,15,2012,1394804
|
118 |
+
116,Idaho,ID,16,2012,1595324
|
119 |
+
117,Illinois,IL,17,2012,12882510
|
120 |
+
118,Indiana,IN,18,2012,6537703
|
121 |
+
119,Iowa,IA,19,2012,3076190
|
122 |
+
120,Kansas,KS,20,2012,2885257
|
123 |
+
121,Kentucky,KY,21,2012,4386346
|
124 |
+
122,Louisiana,LA,22,2012,4600972
|
125 |
+
123,Maine,ME,23,2012,1327729
|
126 |
+
124,Maryland,MD,24,2012,5886992
|
127 |
+
125,Massachusetts,MA,25,2012,6663005
|
128 |
+
126,Michigan,MI,26,2012,9897145
|
129 |
+
127,Minnesota,MN,27,2012,5376643
|
130 |
+
128,Mississippi,MS,28,2012,2983816
|
131 |
+
129,Missouri,MO,29,2012,6024367
|
132 |
+
130,Montana,MT,30,2012,1003783
|
133 |
+
131,Nebraska,NE,31,2012,1853303
|
134 |
+
132,Nevada,NV,32,2012,2743996
|
135 |
+
133,New Hampshire,NH,33,2012,1324232
|
136 |
+
134,New Jersey,NJ,34,2012,8844942
|
137 |
+
135,New Mexico,NM,35,2012,2087309
|
138 |
+
136,New York,NY,36,2012,19572932
|
139 |
+
137,North Carolina,NC,37,2012,9749476
|
140 |
+
138,North Dakota,ND,38,2012,701176
|
141 |
+
139,Ohio,OH,39,2012,11548923
|
142 |
+
140,Oklahoma,OK,40,2012,3818814
|
143 |
+
141,Oregon,OR,41,2012,3899001
|
144 |
+
142,Pennsylvania,PA,42,2012,12767118
|
145 |
+
143,Rhode Island,RI,44,2012,1054621
|
146 |
+
144,South Carolina,SC,45,2012,4717354
|
147 |
+
145,South Dakota,SD,46,2012,833566
|
148 |
+
146,Tennessee,TN,47,2012,6453898
|
149 |
+
147,Texas,TX,48,2012,26084481
|
150 |
+
148,Utah,UT,49,2012,2853375
|
151 |
+
149,Vermont,VT,50,2012,626090
|
152 |
+
150,Virginia,VA,51,2012,8185080
|
153 |
+
151,Washington,WA,53,2012,6897058
|
154 |
+
152,West Virginia,WV,54,2012,1856872
|
155 |
+
153,Wisconsin,WI,55,2012,5719960
|
156 |
+
154,Wyoming,WY,56,2012,576305
|
157 |
+
155,Puerto Rico,PR,72,2012,3634488
|
158 |
+
156,Alabama,AL,1,2013,4830081
|
159 |
+
157,Alaska,AK,2,2013,737068
|
160 |
+
158,Arizona,AZ,4,2013,6632764
|
161 |
+
159,Arkansas,AR,5,2013,2959400
|
162 |
+
160,California,CA,6,2013,38260787
|
163 |
+
161,Colorado,CO,8,2013,5269035
|
164 |
+
162,Connecticut,CT,9,2013,3594841
|
165 |
+
163,Delaware,DE,10,2013,923576
|
166 |
+
164,District of Columbia,DC,11,2013,650581
|
167 |
+
165,Florida,FL,12,2013,19545621
|
168 |
+
166,Georgia,GA,13,2013,9972479
|
169 |
+
167,Hawaii,HI,15,2013,1408243
|
170 |
+
168,Idaho,ID,16,2013,1611206
|
171 |
+
169,Illinois,IL,17,2013,12895129
|
172 |
+
170,Indiana,IN,18,2013,6568713
|
173 |
+
171,Iowa,IA,19,2013,3092997
|
174 |
+
172,Kansas,KS,20,2013,2893212
|
175 |
+
173,Kentucky,KY,21,2013,4404659
|
176 |
+
174,Louisiana,LA,22,2013,4624527
|
177 |
+
175,Maine,ME,23,2013,1328009
|
178 |
+
176,Maryland,MD,24,2013,5923188
|
179 |
+
177,Massachusetts,MA,25,2013,6713315
|
180 |
+
178,Michigan,MI,26,2013,9913065
|
181 |
+
179,Minnesota,MN,27,2013,5413479
|
182 |
+
180,Mississippi,MS,28,2013,2988711
|
183 |
+
181,Missouri,MO,29,2013,6040715
|
184 |
+
182,Montana,MT,30,2013,1013569
|
185 |
+
183,Nebraska,NE,31,2013,1865279
|
186 |
+
184,Nevada,NV,32,2013,2775970
|
187 |
+
185,New Hampshire,NH,33,2013,1326622
|
188 |
+
186,New Jersey,NJ,34,2013,8856972
|
189 |
+
187,New Mexico,NM,35,2013,2092273
|
190 |
+
188,New York,NY,36,2013,19624447
|
191 |
+
189,North Carolina,NC,37,2013,9843336
|
192 |
+
190,North Dakota,ND,38,2013,722036
|
193 |
+
191,Ohio,OH,39,2013,11576684
|
194 |
+
192,Oklahoma,OK,40,2013,3853214
|
195 |
+
193,Oregon,OR,41,2013,3922468
|
196 |
+
194,Pennsylvania,PA,42,2013,12776309
|
197 |
+
195,Rhode Island,RI,44,2013,1055081
|
198 |
+
196,South Carolina,SC,45,2013,4764080
|
199 |
+
197,South Dakota,SD,46,2013,842316
|
200 |
+
198,Tennessee,TN,47,2013,6494340
|
201 |
+
199,Texas,TX,48,2013,26480266
|
202 |
+
200,Utah,UT,49,2013,2897640
|
203 |
+
201,Vermont,VT,50,2013,626210
|
204 |
+
202,Virginia,VA,51,2013,8252427
|
205 |
+
203,Washington,WA,53,2013,6963985
|
206 |
+
204,West Virginia,WV,54,2013,1853914
|
207 |
+
205,Wisconsin,WI,55,2013,5736754
|
208 |
+
206,Wyoming,WY,56,2013,582122
|
209 |
+
207,Puerto Rico,PR,72,2013,3593077
|
210 |
+
208,Alabama,AL,1,2014,4841799
|
211 |
+
209,Alaska,AK,2,2014,736283
|
212 |
+
210,Arizona,AZ,4,2014,6730413
|
213 |
+
211,Arkansas,AR,5,2014,2967392
|
214 |
+
212,California,CA,6,2014,38596972
|
215 |
+
213,Colorado,CO,8,2014,5350101
|
216 |
+
214,Connecticut,CT,9,2014,3594524
|
217 |
+
215,Delaware,DE,10,2014,932487
|
218 |
+
216,District of Columbia,DC,11,2014,662328
|
219 |
+
217,Florida,FL,12,2014,19845911
|
220 |
+
218,Georgia,GA,13,2014,10067278
|
221 |
+
219,Hawaii,HI,15,2014,1414538
|
222 |
+
220,Idaho,ID,16,2014,1631112
|
223 |
+
221,Illinois,IL,17,2014,12884493
|
224 |
+
222,Indiana,IN,18,2014,6593644
|
225 |
+
223,Iowa,IA,19,2014,3109350
|
226 |
+
224,Kansas,KS,20,2014,2900475
|
227 |
+
225,Kentucky,KY,21,2014,4414349
|
228 |
+
226,Louisiana,LA,22,2014,4644013
|
229 |
+
227,Maine,ME,23,2014,1330513
|
230 |
+
228,Maryland,MD,24,2014,5957283
|
231 |
+
229,Massachusetts,MA,25,2014,6762596
|
232 |
+
230,Michigan,MI,26,2014,9929848
|
233 |
+
231,Minnesota,MN,27,2014,5451079
|
234 |
+
232,Mississippi,MS,28,2014,2990468
|
235 |
+
233,Missouri,MO,29,2014,6056202
|
236 |
+
234,Montana,MT,30,2014,1021869
|
237 |
+
235,Nebraska,NE,31,2014,1879321
|
238 |
+
236,Nevada,NV,32,2014,2817628
|
239 |
+
237,New Hampshire,NH,33,2014,1333341
|
240 |
+
238,New Jersey,NJ,34,2014,8864525
|
241 |
+
239,New Mexico,NM,35,2014,2089568
|
242 |
+
240,New York,NY,36,2014,19651049
|
243 |
+
241,North Carolina,NC,37,2014,9932887
|
244 |
+
242,North Dakota,ND,38,2014,737401
|
245 |
+
243,Ohio,OH,39,2014,11602700
|
246 |
+
244,Oklahoma,OK,40,2014,3878187
|
247 |
+
245,Oregon,OR,41,2014,3963244
|
248 |
+
246,Pennsylvania,PA,42,2014,12788313
|
249 |
+
247,Rhode Island,RI,44,2014,1055936
|
250 |
+
248,South Carolina,SC,45,2014,4823617
|
251 |
+
249,South Dakota,SD,46,2014,849129
|
252 |
+
250,Tennessee,TN,47,2014,6541223
|
253 |
+
251,Texas,TX,48,2014,26964333
|
254 |
+
252,Utah,UT,49,2014,2936879
|
255 |
+
253,Vermont,VT,50,2014,625214
|
256 |
+
254,Virginia,VA,51,2014,8310993
|
257 |
+
255,Washington,WA,53,2014,7054655
|
258 |
+
256,West Virginia,WV,54,2014,1849489
|
259 |
+
257,Wisconsin,WI,55,2014,5751525
|
260 |
+
258,Wyoming,WY,56,2014,582531
|
261 |
+
259,Puerto Rico,PR,72,2014,3534874
|
262 |
+
260,Alabama,AL,1,2015,4852347
|
263 |
+
261,Alaska,AK,2,2015,737498
|
264 |
+
262,Arizona,AZ,4,2015,6829676
|
265 |
+
263,Arkansas,AR,5,2015,2978048
|
266 |
+
264,California,CA,6,2015,38918045
|
267 |
+
265,Colorado,CO,8,2015,5450623
|
268 |
+
266,Connecticut,CT,9,2015,3587122
|
269 |
+
267,Delaware,DE,10,2015,941252
|
270 |
+
268,District of Columbia,DC,11,2015,675400
|
271 |
+
269,Florida,FL,12,2015,20209042
|
272 |
+
270,Georgia,GA,13,2015,10178447
|
273 |
+
271,Hawaii,HI,15,2015,1422052
|
274 |
+
272,Idaho,ID,16,2015,1651059
|
275 |
+
273,Illinois,IL,17,2015,12858913
|
276 |
+
274,Indiana,IN,18,2015,6608422
|
277 |
+
275,Iowa,IA,19,2015,3120960
|
278 |
+
276,Kansas,KS,20,2015,2909011
|
279 |
+
277,Kentucky,KY,21,2015,4425976
|
280 |
+
278,Louisiana,LA,22,2015,4664628
|
281 |
+
279,Maine,ME,23,2015,1328262
|
282 |
+
280,Maryland,MD,24,2015,5985562
|
283 |
+
281,Massachusetts,MA,25,2015,6794228
|
284 |
+
282,Michigan,MI,26,2015,9931715
|
285 |
+
283,Minnesota,MN,27,2015,5482032
|
286 |
+
284,Mississippi,MS,28,2015,2988471
|
287 |
+
285,Missouri,MO,29,2015,6071732
|
288 |
+
286,Montana,MT,30,2015,1030475
|
289 |
+
287,Nebraska,NE,31,2015,1891277
|
290 |
+
288,Nevada,NV,32,2015,2866939
|
291 |
+
289,New Hampshire,NH,33,2015,1336350
|
292 |
+
290,New Jersey,NJ,34,2015,8867949
|
293 |
+
291,New Mexico,NM,35,2015,2089291
|
294 |
+
292,New York,NY,36,2015,19654666
|
295 |
+
293,North Carolina,NC,37,2015,10031646
|
296 |
+
294,North Dakota,ND,38,2015,754066
|
297 |
+
295,Ohio,OH,39,2015,11617527
|
298 |
+
296,Oklahoma,OK,40,2015,3909500
|
299 |
+
297,Oregon,OR,41,2015,4015792
|
300 |
+
298,Pennsylvania,PA,42,2015,12784826
|
301 |
+
299,Rhode Island,RI,44,2015,1056065
|
302 |
+
300,South Carolina,SC,45,2015,4891938
|
303 |
+
301,South Dakota,SD,46,2015,853988
|
304 |
+
302,Tennessee,TN,47,2015,6591170
|
305 |
+
303,Texas,TX,48,2015,27470056
|
306 |
+
304,Utah,UT,49,2015,2981835
|
307 |
+
305,Vermont,VT,50,2015,625216
|
308 |
+
306,Virginia,VA,51,2015,8361808
|
309 |
+
307,Washington,WA,53,2015,7163657
|
310 |
+
308,West Virginia,WV,54,2015,1842050
|
311 |
+
309,Wisconsin,WI,55,2015,5760940
|
312 |
+
310,Wyoming,WY,56,2015,585613
|
313 |
+
311,Puerto Rico,PR,72,2015,3473232
|
314 |
+
312,Alabama,AL,1,2016,4863525
|
315 |
+
313,Alaska,AK,2,2016,741456
|
316 |
+
314,Arizona,AZ,4,2016,6941072
|
317 |
+
315,Arkansas,AR,5,2016,2989918
|
318 |
+
316,California,CA,6,2016,39167117
|
319 |
+
317,Colorado,CO,8,2016,5539215
|
320 |
+
318,Connecticut,CT,9,2016,3578141
|
321 |
+
319,Delaware,DE,10,2016,948921
|
322 |
+
320,District of Columbia,DC,11,2016,685815
|
323 |
+
321,Florida,FL,12,2016,20613477
|
324 |
+
322,Georgia,GA,13,2016,10301890
|
325 |
+
323,Hawaii,HI,15,2016,1427559
|
326 |
+
324,Idaho,ID,16,2016,1682380
|
327 |
+
325,Illinois,IL,17,2016,12820527
|
328 |
+
326,Indiana,IN,18,2016,6634304
|
329 |
+
327,Iowa,IA,19,2016,3131371
|
330 |
+
328,Kansas,KS,20,2016,2910844
|
331 |
+
329,Kentucky,KY,21,2016,4438182
|
332 |
+
330,Louisiana,LA,22,2016,4678135
|
333 |
+
331,Maine,ME,23,2016,1331317
|
334 |
+
332,Maryland,MD,24,2016,6003323
|
335 |
+
333,Massachusetts,MA,25,2016,6823608
|
336 |
+
334,Michigan,MI,26,2016,9950571
|
337 |
+
335,Minnesota,MN,27,2016,5522744
|
338 |
+
336,Mississippi,MS,28,2016,2987938
|
339 |
+
337,Missouri,MO,29,2016,6087135
|
340 |
+
338,Montana,MT,30,2016,1040859
|
341 |
+
339,Nebraska,NE,31,2016,1905616
|
342 |
+
340,Nevada,NV,32,2016,2917563
|
343 |
+
341,New Hampshire,NH,33,2016,1342307
|
344 |
+
342,New Jersey,NJ,34,2016,8870827
|
345 |
+
343,New Mexico,NM,35,2016,2091630
|
346 |
+
344,New York,NY,36,2016,19633428
|
347 |
+
345,North Carolina,NC,37,2016,10154788
|
348 |
+
346,North Dakota,ND,38,2016,754434
|
349 |
+
347,Ohio,OH,39,2016,11634370
|
350 |
+
348,Oklahoma,OK,40,2016,3926331
|
351 |
+
349,Oregon,OR,41,2016,4089976
|
352 |
+
350,Pennsylvania,PA,42,2016,12782275
|
353 |
+
351,Rhode Island,RI,44,2016,1056770
|
354 |
+
352,South Carolina,SC,45,2016,4957968
|
355 |
+
353,South Dakota,SD,46,2016,862996
|
356 |
+
354,Tennessee,TN,47,2016,6646010
|
357 |
+
355,Texas,TX,48,2016,27914410
|
358 |
+
356,Utah,UT,49,2016,3041868
|
359 |
+
357,Vermont,VT,50,2016,623657
|
360 |
+
358,Virginia,VA,51,2016,8410106
|
361 |
+
359,Washington,WA,53,2016,7294771
|
362 |
+
360,West Virginia,WV,54,2016,1831023
|
363 |
+
361,Wisconsin,WI,55,2016,5772628
|
364 |
+
362,Wyoming,WY,56,2016,584215
|
365 |
+
363,Puerto Rico,PR,72,2016,3406672
|
366 |
+
364,Alabama,AL,1,2017,4874486
|
367 |
+
365,Alaska,AK,2,2017,739700
|
368 |
+
366,Arizona,AZ,4,2017,7044008
|
369 |
+
367,Arkansas,AR,5,2017,3001345
|
370 |
+
368,California,CA,6,2017,39358497
|
371 |
+
369,Colorado,CO,8,2017,5611885
|
372 |
+
370,Connecticut,CT,9,2017,3573297
|
373 |
+
371,Delaware,DE,10,2017,956823
|
374 |
+
372,District of Columbia,DC,11,2017,694906
|
375 |
+
373,Florida,FL,12,2017,20963613
|
376 |
+
374,Georgia,GA,13,2017,10410330
|
377 |
+
375,Hawaii,HI,15,2017,1424393
|
378 |
+
376,Idaho,ID,16,2017,1717715
|
379 |
+
377,Illinois,IL,17,2017,12778828
|
380 |
+
378,Indiana,IN,18,2017,6658078
|
381 |
+
379,Iowa,IA,19,2017,3141550
|
382 |
+
380,Kansas,KS,20,2017,2908718
|
383 |
+
381,Kentucky,KY,21,2017,4452268
|
384 |
+
382,Louisiana,LA,22,2017,4670560
|
385 |
+
383,Maine,ME,23,2017,1334612
|
386 |
+
384,Maryland,MD,24,2017,6023868
|
387 |
+
385,Massachusetts,MA,25,2017,6859789
|
388 |
+
386,Michigan,MI,26,2017,9973114
|
389 |
+
387,Minnesota,MN,27,2017,5566230
|
390 |
+
388,Mississippi,MS,28,2017,2988510
|
391 |
+
389,Missouri,MO,29,2017,6106670
|
392 |
+
390,Montana,MT,30,2017,1052482
|
393 |
+
391,Nebraska,NE,31,2017,1915947
|
394 |
+
392,Nevada,NV,32,2017,2969905
|
395 |
+
393,New Hampshire,NH,33,2017,1348787
|
396 |
+
394,New Jersey,NJ,34,2017,8885525
|
397 |
+
395,New Mexico,NM,35,2017,2091784
|
398 |
+
396,New York,NY,36,2017,19589572
|
399 |
+
397,North Carolina,NC,37,2017,10268233
|
400 |
+
398,North Dakota,ND,38,2017,754942
|
401 |
+
399,Ohio,OH,39,2017,11659650
|
402 |
+
400,Oklahoma,OK,40,2017,3931316
|
403 |
+
401,Oregon,OR,41,2017,4143625
|
404 |
+
402,Pennsylvania,PA,42,2017,12787641
|
405 |
+
403,Rhode Island,RI,44,2017,1055673
|
406 |
+
404,South Carolina,SC,45,2017,5021268
|
407 |
+
405,South Dakota,SD,46,2017,872868
|
408 |
+
406,Tennessee,TN,47,2017,6708799
|
409 |
+
407,Texas,TX,48,2017,28295273
|
410 |
+
408,Utah,UT,49,2017,3101042
|
411 |
+
409,Vermont,VT,50,2017,624344
|
412 |
+
410,Virginia,VA,51,2017,8463587
|
413 |
+
411,Washington,WA,53,2017,7423362
|
414 |
+
412,West Virginia,WV,54,2017,1817004
|
415 |
+
413,Wisconsin,WI,55,2017,5790186
|
416 |
+
414,Wyoming,WY,56,2017,578931
|
417 |
+
415,Puerto Rico,PR,72,2017,3325286
|
418 |
+
416,Alabama,AL,1,2018,4887681
|
419 |
+
417,Alaska,AK,2,2018,735139
|
420 |
+
418,Arizona,AZ,4,2018,7158024
|
421 |
+
419,Arkansas,AR,5,2018,3009733
|
422 |
+
420,California,CA,6,2018,39461588
|
423 |
+
421,Colorado,CO,8,2018,5691287
|
424 |
+
422,Connecticut,CT,9,2018,3571520
|
425 |
+
423,Delaware,DE,10,2018,965479
|
426 |
+
424,District of Columbia,DC,11,2018,701547
|
427 |
+
425,Florida,FL,12,2018,21244317
|
428 |
+
426,Georgia,GA,13,2018,10511131
|
429 |
+
427,Hawaii,HI,15,2018,1420593
|
430 |
+
428,Idaho,ID,16,2018,1750536
|
431 |
+
429,Illinois,IL,17,2018,12723071
|
432 |
+
430,Indiana,IN,18,2018,6695497
|
433 |
+
431,Iowa,IA,19,2018,3148618
|
434 |
+
432,Kansas,KS,20,2018,2911359
|
435 |
+
433,Kentucky,KY,21,2018,4461153
|
436 |
+
434,Louisiana,LA,22,2018,4659690
|
437 |
+
435,Maine,ME,23,2018,1339057
|
438 |
+
436,Maryland,MD,24,2018,6035802
|
439 |
+
437,Massachusetts,MA,25,2018,6882635
|
440 |
+
438,Michigan,MI,26,2018,9984072
|
441 |
+
439,Minnesota,MN,27,2018,5606249
|
442 |
+
440,Mississippi,MS,28,2018,2981020
|
443 |
+
441,Missouri,MO,29,2018,6121623
|
444 |
+
442,Montana,MT,30,2018,1060665
|
445 |
+
443,Nebraska,NE,31,2018,1925614
|
446 |
+
444,Nevada,NV,32,2018,3027341
|
447 |
+
445,New Hampshire,NH,33,2018,1353465
|
448 |
+
446,New Jersey,NJ,34,2018,8886025
|
449 |
+
447,New Mexico,NM,35,2018,2092741
|
450 |
+
448,New York,NY,36,2018,19530351
|
451 |
+
449,North Carolina,NC,37,2018,10381615
|
452 |
+
450,North Dakota,ND,38,2018,758080
|
453 |
+
451,Ohio,OH,39,2018,11676341
|
454 |
+
452,Oklahoma,OK,40,2018,3940235
|
455 |
+
453,Oregon,OR,41,2018,4181886
|
456 |
+
454,Pennsylvania,PA,42,2018,12800922
|
457 |
+
455,Rhode Island,RI,44,2018,1058287
|
458 |
+
456,South Carolina,SC,45,2018,5084156
|
459 |
+
457,South Dakota,SD,46,2018,878698
|
460 |
+
458,Tennessee,TN,47,2018,6771631
|
461 |
+
459,Texas,TX,48,2018,28628666
|
462 |
+
460,Utah,UT,49,2018,3153550
|
463 |
+
461,Vermont,VT,50,2018,624358
|
464 |
+
462,Virginia,VA,51,2018,8501286
|
465 |
+
463,Washington,WA,53,2018,7523869
|
466 |
+
464,West Virginia,WV,54,2018,1804291
|
467 |
+
465,Wisconsin,WI,55,2018,5807406
|
468 |
+
466,Wyoming,WY,56,2018,577601
|
469 |
+
467,Puerto Rico,PR,72,2018,3193354
|
470 |
+
468,Alabama,AL,1,2019,4903185
|
471 |
+
469,Alaska,AK,2,2019,731545
|
472 |
+
470,Arizona,AZ,4,2019,7278717
|
473 |
+
471,Arkansas,AR,5,2019,3017804
|
474 |
+
472,California,CA,6,2019,39512223
|
475 |
+
473,Colorado,CO,8,2019,5758736
|
476 |
+
474,Connecticut,CT,9,2019,3565287
|
477 |
+
475,Delaware,DE,10,2019,973764
|
478 |
+
476,District of Columbia,DC,11,2019,705749
|
479 |
+
477,Florida,FL,12,2019,21477737
|
480 |
+
478,Georgia,GA,13,2019,10617423
|
481 |
+
479,Hawaii,HI,15,2019,1415872
|
482 |
+
480,Idaho,ID,16,2019,1787065
|
483 |
+
481,Illinois,IL,17,2019,12671821
|
484 |
+
482,Indiana,IN,18,2019,6732219
|
485 |
+
483,Iowa,IA,19,2019,3155070
|
486 |
+
484,Kansas,KS,20,2019,2913314
|
487 |
+
485,Kentucky,KY,21,2019,4467673
|
488 |
+
486,Louisiana,LA,22,2019,4648794
|
489 |
+
487,Maine,ME,23,2019,1344212
|
490 |
+
488,Maryland,MD,24,2019,6045680
|
491 |
+
489,Massachusetts,MA,25,2019,6892503
|
492 |
+
490,Michigan,MI,26,2019,9986857
|
493 |
+
491,Minnesota,MN,27,2019,5639632
|
494 |
+
492,Mississippi,MS,28,2019,2976149
|
495 |
+
493,Missouri,MO,29,2019,6137428
|
496 |
+
494,Montana,MT,30,2019,1068778
|
497 |
+
495,Nebraska,NE,31,2019,1934408
|
498 |
+
496,Nevada,NV,32,2019,3080156
|
499 |
+
497,New Hampshire,NH,33,2019,1359711
|
500 |
+
498,New Jersey,NJ,34,2019,8882190
|
501 |
+
499,New Mexico,NM,35,2019,2096829
|
502 |
+
500,New York,NY,36,2019,19453561
|
503 |
+
501,North Carolina,NC,37,2019,10488084
|
504 |
+
502,North Dakota,ND,38,2019,762062
|
505 |
+
503,Ohio,OH,39,2019,11689100
|
506 |
+
504,Oklahoma,OK,40,2019,3956971
|
507 |
+
505,Oregon,OR,41,2019,4217737
|
508 |
+
506,Pennsylvania,PA,42,2019,12801989
|
509 |
+
507,Rhode Island,RI,44,2019,1059361
|
510 |
+
508,South Carolina,SC,45,2019,5148714
|
511 |
+
509,South Dakota,SD,46,2019,884659
|
512 |
+
510,Tennessee,TN,47,2019,6829174
|
513 |
+
511,Texas,TX,48,2019,28995881
|
514 |
+
512,Utah,UT,49,2019,3205958
|
515 |
+
513,Vermont,VT,50,2019,623989
|
516 |
+
514,Virginia,VA,51,2019,8535519
|
517 |
+
515,Washington,WA,53,2019,7614893
|
518 |
+
516,West Virginia,WV,54,2019,1792147
|
519 |
+
517,Wisconsin,WI,55,2019,5822434
|
520 |
+
518,Wyoming,WY,56,2019,578759
|
521 |
+
519,Puerto Rico,PR,72,2019,3193694
|
us-population-2010-2019-states-code.csv
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
states,states_code,id,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019
|
2 |
+
Alabama,AL,1,"4,785,437","4,799,069","4,815,588","4,830,081","4,841,799","4,852,347","4,863,525","4,874,486","4,887,681","4,903,185"
|
3 |
+
Alaska,AK,2,"713,910","722,128","730,443","737,068","736,283","737,498","741,456","739,700","735,139","731,545"
|
4 |
+
Arizona,AZ,4,"6,407,172","6,472,643","6,554,978","6,632,764","6,730,413","6,829,676","6,941,072","7,044,008","7,158,024","7,278,717"
|
5 |
+
Arkansas,AR,5,"2,921,964","2,940,667","2,952,164","2,959,400","2,967,392","2,978,048","2,989,918","3,001,345","3,009,733","3,017,804"
|
6 |
+
California,CA,6,"37,319,502","37,638,369","37,948,800","38,260,787","38,596,972","38,918,045","39,167,117","39,358,497","39,461,588","39,512,223"
|
7 |
+
Colorado,CO,8,"5,047,349","5,121,108","5,192,647","5,269,035","5,350,101","5,450,623","5,539,215","5,611,885","5,691,287","5,758,736"
|
8 |
+
Connecticut,CT,9,"3,579,114","3,588,283","3,594,547","3,594,841","3,594,524","3,587,122","3,578,141","3,573,297","3,571,520","3,565,287"
|
9 |
+
Delaware,DE,10,"899,593","907,381","915,179","923,576","932,487","941,252","948,921","956,823","965,479","973,764"
|
10 |
+
District of Columbia,DC,11,"605,226","619,800","634,924","650,581","662,328","675,400","685,815","694,906","701,547","705,749"
|
11 |
+
Florida,FL,12,"18,845,537","19,053,237","19,297,822","19,545,621","19,845,911","20,209,042","20,613,477","20,963,613","21,244,317","21,477,737"
|
12 |
+
Georgia,GA,13,"9,711,881","9,802,431","9,901,430","9,972,479","10,067,278","10,178,447","10,301,890","10,410,330","10,511,131","10,617,423"
|
13 |
+
Hawaii,HI,15,"1,363,963","1,379,329","1,394,804","1,408,243","1,414,538","1,422,052","1,427,559","1,424,393","1,420,593","1,415,872"
|
14 |
+
Idaho,ID,16,"1,570,746","1,583,910","1,595,324","1,611,206","1,631,112","1,651,059","1,682,380","1,717,715","1,750,536","1,787,065"
|
15 |
+
Illinois,IL,17,"12,840,503","12,867,454","12,882,510","12,895,129","12,884,493","12,858,913","12,820,527","12,778,828","12,723,071","12,671,821"
|
16 |
+
Indiana,IN,18,"6,490,432","6,516,528","6,537,703","6,568,713","6,593,644","6,608,422","6,634,304","6,658,078","6,695,497","6,732,219"
|
17 |
+
Iowa,IA,19,"3,050,745","3,066,336","3,076,190","3,092,997","3,109,350","3,120,960","3,131,371","3,141,550","3,148,618","3,155,070"
|
18 |
+
Kansas,KS,20,"2,858,190","2,869,225","2,885,257","2,893,212","2,900,475","2,909,011","2,910,844","2,908,718","2,911,359","2,913,314"
|
19 |
+
Kentucky,KY,21,"4,348,181","4,369,821","4,386,346","4,404,659","4,414,349","4,425,976","4,438,182","4,452,268","4,461,153","4,467,673"
|
20 |
+
Louisiana,LA,22,"4,544,532","4,575,625","4,600,972","4,624,527","4,644,013","4,664,628","4,678,135","4,670,560","4,659,690","4,648,794"
|
21 |
+
Maine,ME,23,"1,327,629","1,328,284","1,327,729","1,328,009","1,330,513","1,328,262","1,331,317","1,334,612","1,339,057","1,344,212"
|
22 |
+
Maryland,MD,24,"5,788,645","5,839,419","5,886,992","5,923,188","5,957,283","5,985,562","6,003,323","6,023,868","6,035,802","6,045,680"
|
23 |
+
Massachusetts,MA,25,"6,566,307","6,613,583","6,663,005","6,713,315","6,762,596","6,794,228","6,823,608","6,859,789","6,882,635","6,892,503"
|
24 |
+
Michigan,MI,26,"9,877,510","9,882,412","9,897,145","9,913,065","9,929,848","9,931,715","9,950,571","9,973,114","9,984,072","9,986,857"
|
25 |
+
Minnesota,MN,27,"5,310,828","5,346,143","5,376,643","5,413,479","5,451,079","5,482,032","5,522,744","5,566,230","5,606,249","5,639,632"
|
26 |
+
Mississippi,MS,28,"2,970,548","2,978,731","2,983,816","2,988,711","2,990,468","2,988,471","2,987,938","2,988,510","2,981,020","2,976,149"
|
27 |
+
Missouri,MO,29,"5,995,974","6,010,275","6,024,367","6,040,715","6,056,202","6,071,732","6,087,135","6,106,670","6,121,623","6,137,428"
|
28 |
+
Montana,MT,30,"990,697","997,316","1,003,783","1,013,569","1,021,869","1,030,475","1,040,859","1,052,482","1,060,665","1,068,778"
|
29 |
+
Nebraska,NE,31,"1,829,542","1,840,672","1,853,303","1,865,279","1,879,321","1,891,277","1,905,616","1,915,947","1,925,614","1,934,408"
|
30 |
+
Nevada,NV,32,"2,702,405","2,712,730","2,743,996","2,775,970","2,817,628","2,866,939","2,917,563","2,969,905","3,027,341","3,080,156"
|
31 |
+
New Hampshire,NH,33,"1,316,762","1,320,202","1,324,232","1,326,622","1,333,341","1,336,350","1,342,307","1,348,787","1,353,465","1,359,711"
|
32 |
+
New Jersey,NJ,34,"8,799,446","8,828,117","8,844,942","8,856,972","8,864,525","8,867,949","8,870,827","8,885,525","8,886,025","8,882,190"
|
33 |
+
New Mexico,NM,35,"2,064,552","2,080,450","2,087,309","2,092,273","2,089,568","2,089,291","2,091,630","2,091,784","2,092,741","2,096,829"
|
34 |
+
New York,NY,36,"19,399,878","19,499,241","19,572,932","19,624,447","19,651,049","19,654,666","19,633,428","19,589,572","19,530,351","19,453,561"
|
35 |
+
North Carolina,NC,37,"9,574,323","9,657,592","9,749,476","9,843,336","9,932,887","10,031,646","10,154,788","10,268,233","10,381,615","10,488,084"
|
36 |
+
North Dakota,ND,38,"674,715","685,225","701,176","722,036","737,401","754,066","754,434","754,942","758,080","762,062"
|
37 |
+
Ohio,OH,39,"11,539,336","11,544,663","11,548,923","11,576,684","11,602,700","11,617,527","11,634,370","11,659,650","11,676,341","11,689,100"
|
38 |
+
Oklahoma,OK,40,"3,759,944","3,788,379","3,818,814","3,853,214","3,878,187","3,909,500","3,926,331","3,931,316","3,940,235","3,956,971"
|
39 |
+
Oregon,OR,41,"3,837,491","3,872,036","3,899,001","3,922,468","3,963,244","4,015,792","4,089,976","4,143,625","4,181,886","4,217,737"
|
40 |
+
Pennsylvania,PA,42,"12,711,160","12,745,815","12,767,118","12,776,309","12,788,313","12,784,826","12,782,275","12,787,641","12,800,922","12,801,989"
|
41 |
+
Rhode Island,RI,44,"1,053,959","1,053,649","1,054,621","1,055,081","1,055,936","1,056,065","1,056,770","1,055,673","1,058,287","1,059,361"
|
42 |
+
South Carolina,SC,45,"4,635,649","4,671,994","4,717,354","4,764,080","4,823,617","4,891,938","4,957,968","5,021,268","5,084,156","5,148,714"
|
43 |
+
South Dakota,SD,46,"816,166","823,579","833,566","842,316","849,129","853,988","862,996","872,868","878,698","884,659"
|
44 |
+
Tennessee,TN,47,"6,355,311","6,399,291","6,453,898","6,494,340","6,541,223","6,591,170","6,646,010","6,708,799","6,771,631","6,829,174"
|
45 |
+
Texas,TX,48,"25,241,971","25,645,629","26,084,481","26,480,266","26,964,333","27,470,056","27,914,410","28,295,273","28,628,666","28,995,881"
|
46 |
+
Utah,UT,49,"2,775,332","2,814,384","2,853,375","2,897,640","2,936,879","2,981,835","3,041,868","3,101,042","3,153,550","3,205,958"
|
47 |
+
Vermont,VT,50,"625,879","627,049","626,090","626,210","625,214","625,216","623,657","624,344","624,358","623,989"
|
48 |
+
Virginia,VA,51,"8,023,699","8,101,155","8,185,080","8,252,427","8,310,993","8,361,808","8,410,106","8,463,587","8,501,286","8,535,519"
|
49 |
+
Washington,WA,53,"6,742,830","6,826,627","6,897,058","6,963,985","7,054,655","7,163,657","7,294,771","7,423,362","7,523,869","7,614,893"
|
50 |
+
West Virginia,WV,54,"1,854,239","1,856,301","1,856,872","1,853,914","1,849,489","1,842,050","1,831,023","1,817,004","1,804,291","1,792,147"
|
51 |
+
Wisconsin,WI,55,"5,690,475","5,705,288","5,719,960","5,736,754","5,751,525","5,760,940","5,772,628","5,790,186","5,807,406","5,822,434"
|
52 |
+
Wyoming,WY,56,"564,487","567,299","576,305","582,122","582,531","585,613","584,215","578,931","577,601","578,759"
|
53 |
+
Puerto Rico,PR,72,"3,721,525","3,678,732","3,634,488","3,593,077","3,534,874","3,473,232","3,406,672","3,325,286","3,193,354","3,193,694"
|
us-population-2010-2019.csv
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
states,id,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019
|
2 |
+
Alabama,1,"4,785,437","4,799,069","4,815,588","4,830,081","4,841,799","4,852,347","4,863,525","4,874,486","4,887,681","4,903,185"
|
3 |
+
Alaska,2,"713,910","722,128","730,443","737,068","736,283","737,498","741,456","739,700","735,139","731,545"
|
4 |
+
Arizona,4,"6,407,172","6,472,643","6,554,978","6,632,764","6,730,413","6,829,676","6,941,072","7,044,008","7,158,024","7,278,717"
|
5 |
+
Arkansas,5,"2,921,964","2,940,667","2,952,164","2,959,400","2,967,392","2,978,048","2,989,918","3,001,345","3,009,733","3,017,804"
|
6 |
+
California,6,"37,319,502","37,638,369","37,948,800","38,260,787","38,596,972","38,918,045","39,167,117","39,358,497","39,461,588","39,512,223"
|
7 |
+
Colorado,8,"5,047,349","5,121,108","5,192,647","5,269,035","5,350,101","5,450,623","5,539,215","5,611,885","5,691,287","5,758,736"
|
8 |
+
Connecticut,9,"3,579,114","3,588,283","3,594,547","3,594,841","3,594,524","3,587,122","3,578,141","3,573,297","3,571,520","3,565,287"
|
9 |
+
Delaware,10,"899,593","907,381","915,179","923,576","932,487","941,252","948,921","956,823","965,479","973,764"
|
10 |
+
District of Columbia,11,"605,226","619,800","634,924","650,581","662,328","675,400","685,815","694,906","701,547","705,749"
|
11 |
+
Florida,12,"18,845,537","19,053,237","19,297,822","19,545,621","19,845,911","20,209,042","20,613,477","20,963,613","21,244,317","21,477,737"
|
12 |
+
Georgia,13,"9,711,881","9,802,431","9,901,430","9,972,479","10,067,278","10,178,447","10,301,890","10,410,330","10,511,131","10,617,423"
|
13 |
+
Hawaii,15,"1,363,963","1,379,329","1,394,804","1,408,243","1,414,538","1,422,052","1,427,559","1,424,393","1,420,593","1,415,872"
|
14 |
+
Idaho,16,"1,570,746","1,583,910","1,595,324","1,611,206","1,631,112","1,651,059","1,682,380","1,717,715","1,750,536","1,787,065"
|
15 |
+
Illinois,17,"12,840,503","12,867,454","12,882,510","12,895,129","12,884,493","12,858,913","12,820,527","12,778,828","12,723,071","12,671,821"
|
16 |
+
Indiana,18,"6,490,432","6,516,528","6,537,703","6,568,713","6,593,644","6,608,422","6,634,304","6,658,078","6,695,497","6,732,219"
|
17 |
+
Iowa,19,"3,050,745","3,066,336","3,076,190","3,092,997","3,109,350","3,120,960","3,131,371","3,141,550","3,148,618","3,155,070"
|
18 |
+
Kansas,20,"2,858,190","2,869,225","2,885,257","2,893,212","2,900,475","2,909,011","2,910,844","2,908,718","2,911,359","2,913,314"
|
19 |
+
Kentucky,21,"4,348,181","4,369,821","4,386,346","4,404,659","4,414,349","4,425,976","4,438,182","4,452,268","4,461,153","4,467,673"
|
20 |
+
Louisiana,22,"4,544,532","4,575,625","4,600,972","4,624,527","4,644,013","4,664,628","4,678,135","4,670,560","4,659,690","4,648,794"
|
21 |
+
Maine,23,"1,327,629","1,328,284","1,327,729","1,328,009","1,330,513","1,328,262","1,331,317","1,334,612","1,339,057","1,344,212"
|
22 |
+
Maryland,24,"5,788,645","5,839,419","5,886,992","5,923,188","5,957,283","5,985,562","6,003,323","6,023,868","6,035,802","6,045,680"
|
23 |
+
Massachusetts,25,"6,566,307","6,613,583","6,663,005","6,713,315","6,762,596","6,794,228","6,823,608","6,859,789","6,882,635","6,892,503"
|
24 |
+
Michigan,26,"9,877,510","9,882,412","9,897,145","9,913,065","9,929,848","9,931,715","9,950,571","9,973,114","9,984,072","9,986,857"
|
25 |
+
Minnesota,27,"5,310,828","5,346,143","5,376,643","5,413,479","5,451,079","5,482,032","5,522,744","5,566,230","5,606,249","5,639,632"
|
26 |
+
Mississippi,28,"2,970,548","2,978,731","2,983,816","2,988,711","2,990,468","2,988,471","2,987,938","2,988,510","2,981,020","2,976,149"
|
27 |
+
Missouri,29,"5,995,974","6,010,275","6,024,367","6,040,715","6,056,202","6,071,732","6,087,135","6,106,670","6,121,623","6,137,428"
|
28 |
+
Montana,30,"990,697","997,316","1,003,783","1,013,569","1,021,869","1,030,475","1,040,859","1,052,482","1,060,665","1,068,778"
|
29 |
+
Nebraska,31,"1,829,542","1,840,672","1,853,303","1,865,279","1,879,321","1,891,277","1,905,616","1,915,947","1,925,614","1,934,408"
|
30 |
+
Nevada,32,"2,702,405","2,712,730","2,743,996","2,775,970","2,817,628","2,866,939","2,917,563","2,969,905","3,027,341","3,080,156"
|
31 |
+
New Hampshire,33,"1,316,762","1,320,202","1,324,232","1,326,622","1,333,341","1,336,350","1,342,307","1,348,787","1,353,465","1,359,711"
|
32 |
+
New Jersey,34,"8,799,446","8,828,117","8,844,942","8,856,972","8,864,525","8,867,949","8,870,827","8,885,525","8,886,025","8,882,190"
|
33 |
+
New Mexico,35,"2,064,552","2,080,450","2,087,309","2,092,273","2,089,568","2,089,291","2,091,630","2,091,784","2,092,741","2,096,829"
|
34 |
+
New York,36,"19,399,878","19,499,241","19,572,932","19,624,447","19,651,049","19,654,666","19,633,428","19,589,572","19,530,351","19,453,561"
|
35 |
+
North Carolina,37,"9,574,323","9,657,592","9,749,476","9,843,336","9,932,887","10,031,646","10,154,788","10,268,233","10,381,615","10,488,084"
|
36 |
+
North Dakota,38,"674,715","685,225","701,176","722,036","737,401","754,066","754,434","754,942","758,080","762,062"
|
37 |
+
Ohio,39,"11,539,336","11,544,663","11,548,923","11,576,684","11,602,700","11,617,527","11,634,370","11,659,650","11,676,341","11,689,100"
|
38 |
+
Oklahoma,40,"3,759,944","3,788,379","3,818,814","3,853,214","3,878,187","3,909,500","3,926,331","3,931,316","3,940,235","3,956,971"
|
39 |
+
Oregon,41,"3,837,491","3,872,036","3,899,001","3,922,468","3,963,244","4,015,792","4,089,976","4,143,625","4,181,886","4,217,737"
|
40 |
+
Pennsylvania,42,"12,711,160","12,745,815","12,767,118","12,776,309","12,788,313","12,784,826","12,782,275","12,787,641","12,800,922","12,801,989"
|
41 |
+
Rhode Island,44,"1,053,959","1,053,649","1,054,621","1,055,081","1,055,936","1,056,065","1,056,770","1,055,673","1,058,287","1,059,361"
|
42 |
+
South Carolina,45,"4,635,649","4,671,994","4,717,354","4,764,080","4,823,617","4,891,938","4,957,968","5,021,268","5,084,156","5,148,714"
|
43 |
+
South Dakota,46,"816,166","823,579","833,566","842,316","849,129","853,988","862,996","872,868","878,698","884,659"
|
44 |
+
Tennessee,47,"6,355,311","6,399,291","6,453,898","6,494,340","6,541,223","6,591,170","6,646,010","6,708,799","6,771,631","6,829,174"
|
45 |
+
Texas,48,"25,241,971","25,645,629","26,084,481","26,480,266","26,964,333","27,470,056","27,914,410","28,295,273","28,628,666","28,995,881"
|
46 |
+
Utah,49,"2,775,332","2,814,384","2,853,375","2,897,640","2,936,879","2,981,835","3,041,868","3,101,042","3,153,550","3,205,958"
|
47 |
+
Vermont,50,"625,879","627,049","626,090","626,210","625,214","625,216","623,657","624,344","624,358","623,989"
|
48 |
+
Virginia,51,"8,023,699","8,101,155","8,185,080","8,252,427","8,310,993","8,361,808","8,410,106","8,463,587","8,501,286","8,535,519"
|
49 |
+
Washington,53,"6,742,830","6,826,627","6,897,058","6,963,985","7,054,655","7,163,657","7,294,771","7,423,362","7,523,869","7,614,893"
|
50 |
+
West Virginia,54,"1,854,239","1,856,301","1,856,872","1,853,914","1,849,489","1,842,050","1,831,023","1,817,004","1,804,291","1,792,147"
|
51 |
+
Wisconsin,55,"5,690,475","5,705,288","5,719,960","5,736,754","5,751,525","5,760,940","5,772,628","5,790,186","5,807,406","5,822,434"
|
52 |
+
Wyoming,56,"564,487","567,299","576,305","582,122","582,531","585,613","584,215","578,931","577,601","578,759"
|
53 |
+
Puerto Rico,72,"3,721,525","3,678,732","3,634,488","3,593,077","3,534,874","3,473,232","3,406,672","3,325,286","3,193,354","3,193,694"
|