VNE is a cyberGIS-based visual analytics tool that allows users to (1) delineate neighborhoods based on their selection of variables describing socioeconomic and demographic profiles, and (2) explore which neighborhoods are more susceptible to the impacts of disasters than other neighborhoods based on specific socioeconomic and demographic characteristics. This notebook contain examples use of VNE in several different study areas. VNE use "geosnap" python package, which has been already installed in CyberGIX Python 3-0.8.1. If you use this environment, you will not be required to install python packages.
from VulnerableNeighborhoodExplorer import Vulnerability_viz
from VulnerableNeighborhoodExplorer import Vulnerability_log
param_Chicago = {
'title': "Vulnerable Neighborhood to COVID-19, Chicago",
'subject': "COVID-19",
'filename_suffix': "Chicago_kmeans_C5",
'inputCSV': "input_Chicago/ACS_2018_5year__zipcode_Cook_byZipcode_normalized.csv",
'shapefile': "input_Chicago/zipcode_Cook_County.shp",
'disasterInputCSV': "input_Chicago/COVID_IL_20200711.csv",
'rate1': 'Confirmed (%) = _count/_tested', # Formula to compute confirmed rate
'normalizationCSV': "input_Chicago/Normalization_Table_Chicago.csv",
'normalizationUnit': 10000,
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True,
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters': 3,
'Number_of_BoxPlots_for_Subject_Clusters': 0,
}
Vulnerability_viz(param_Chicago)
param_NYC = {
'title': "Vulnerable Neighborhood to COVID-19, NYC",
'subject': "COVID-19",
'filename_suffix': "New_York_kmeans_C5",
'inputCSV': "input_NYC/ACS_2018_5year__zipcode_NYC_byZipcode_normalized.csv",
'shapefile': "input_NYC/zipcode_NYC.shp",
'disasterInputCSV': "input_NYC/COVID_NYC_20200711_revised.csv",
'rate1': 'Confirmed rate = _count/_tested', # Formula to compute rate1 in subjectCSV such as confirmed rate1.
'rate2': 'Case fatality rate = _deaths/_count', # Formula to compute rate2 in subjectCSV such as death rate2.
'normalizationCSV': "input_NYC/Decision_Normalization_NYC.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, # density chart: INC changes as the map extent changes
'Distribution_of_Subject_different_period': False, # density chart: INC changes by different years
'Distribution_of_Subject_different_cluster': False, # density chart: INC changes by different clusters
'Zscore_Means_across_Clusters': True, # heatmap: Z Score Means across Clusters
'Zscore_Means_of_Each_Cluster': True, # barchart: Z Score Means of Each Cluster
'Number_of_Barcharts_for_Subject_Clusters': 1,
'Number_of_BoxPlots_for_Subject_Clusters': 1,
}
Vulnerability_viz(param_NYC)
Vulnerability_log(param_NYC)
param_Phoenix = {
'title': "Vulnerable Neighborhood to COVID-19, Phoenix",
'subject': "COVID-19",
'filename_suffix': "Phoenix_kmeans_C5",
'inputCSV': "input_Phoenix/ACS_2018_5year__zipcode_AZ_Maricopa_byZipcode_normalized.csv",
'shapefile': "input_Phoenix/AZ_maricopa.shp",
'disasterInputCSV': "input_Phoenix/COVID_20200715_Arizona.csv",
'rate1': 'Confirmed (%) = _count/_tested', # Formula to compute rate1 in subjectCSV such as confirmed rate1.
'normalizationCSV': "Decision_Normalization.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'label': "short_name",
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, #density chart: INC changes as the map extent changes
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters': 1,
'Number_of_BoxPlots_for_Subject_Clusters': 1,
}
Vulnerability_viz(param_Phoenix)
Vulnerability_log(param_Phoenix)
param_Miami = {
'title': "Vulnerable Neighborhood to COVID-19, Miami",
'subject': "COVID-19",
'filename_suffix': "Miami_kmeans_C5",
'inputCSV': "input_Miami/ACS_2018_5year__zipcode_Miami_byZipcode_normalized.csv",
'shapefile': "input_Miami/Miami4.shp",
'disasterInputCSV': "input_Miami/COVID_Florida_20200717.csv",
'rate1': 'Confirmed (%) = _count/_tested',# Formula to compute rate1 in subjectCSV such as confirmed rate1.
'subjectNormalization': '(/10k pop) = all * 10000.0 / Population', # denominator, per number of pop.
'normalizationCSV': "Decision_Normalization.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'label': "short_name",
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, #density chart: INC changes as the map extent changes
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters': 1,
'Number_of_BoxPlots_for_Subject_Clusters': 1,
}
Vulnerability_viz(param_Phoenix)
Vulnerability_log(param_Phoenix)
param_US = {
'title': "Vulnerable Neighborhood to COVID-19, US",
'subject': "COVID-19",
'filename_suffix': "US_kmeans_C5",
'inputCSV': "input_US/ACS_2018_5year__County_US_byCounty_normalized.csv",
'shapefile': "input_US/counties_mainland_US.shp",
'disasterInputCSV': "input_US/COVID_us_counties.csv",
'rate2': 'Case fatality rate = _deaths/_count', # Formula to compute rate2 in subjectCSV such as death rate2.
'subjectNormalization': '(/10k pop) = all * 10000.0 / Population', # denominator, per number of pop.
'normalizationCSV': "input_US/Decision_Normalization_US.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'label': "short_name",
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, #density chart: INC changes as the map extent changes
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters': 3,
'Number_of_BoxPlots_for_Subject_Clusters': 3,
}
Vulnerability_viz(param_US)
Vulnerability_log(param_US)
param_extended_Chicago = {
'title': "Vulnerable Neighborhood to COVID-19, Chicago",
'subject': "COVID-19",
'filename_suffix': "Chicago_extended_kmeans_C5",
'inputCSV': "input_extended_Chicago/ACS_2018_5year__zipcode_extended_Chicago_byZipcode_normalized.csv",
'shapefile': "input_extended_Chicago/Chicago_extended.shp",
'disasterInputCSV': "input_Chicago/COVID_IL_20200711.csv",
'subjectNormalization': '(/10k pop) = all * 10000.0 / Population', # denominator, per number of pop.
'normalizationCSV': "input_Chicago/Decision_Normalization_Chicago.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'label': "short_name",
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, #density chart: INC changes as the map extent changes
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters': 3,
'Number_of_BoxPlots_for_Subject_Clusters': 3,
}
Vulnerability_viz(param_extended_Chicago)
Vulnerability_log(param_extended_Chicago)
param_Illinois = {
'title': "Vulnerable Neighborhood to COVID-19, Illinois",
'subject': "COVID-19",
'filename_suffix': "Illinois_kmeans_C5",
'inputCSV': "input_Illinois/ACS_2018_5year__zipcode_IL_byZipcode_normalized.csv",
'shapefile': "input_Illinois/zipcode_IL.shp",
'disasterInputCSV': "input_Chicago/COVID_IL_20200711.csv",
'rate1': 'Confirmed (%) = _count/_tested', # Formula to compute rate1 in subjectCSV such as confirmed rate1.
'subjectNormalization': '(/10k pop) = all * 10000.0 / Population', # denominator, per number of pop.
'normalizationCSV': "Decision_Normalization.csv", # divisor instead of population from CSV file
'normalizationUnit': 10000, # default: 10000
'years': [2018],
'method': "kmeans", # Aspatial Clustering: affinity_propagation, gaussian_mixture, hdbscan, kmeans, spectral, ward
# Spatial Clustering: azp, max_p, skater, spenc, ward_spatial
'nClusters': 5, # This option should be commented out for affinity_propagation and hdbscan
'label': "short_name",
'variables': [
"Median monthly housing costs",
"% below poverty",
"% unemployed",
"% with 4year college degree",
"% manufacturing",
"% service industry",
"% structures more than 30 years old",
"% households moved <10 years ago",
"% multiunit structures",
"% owner occupied housing",
"% vacant housing",
"% > 60 years old",
"% < 18 years old",
"% white",
"% Asian",
"% Hispanic",
"% black",
"% foreign born",
],
'Distribution_of_Subject': True, #density chart: INC changes as the map extent changes
'Zscore_Means_across_Clusters': True,
'Zscore_Means_of_Each_Cluster': True,
'Number_of_Barcharts_for_Subject_Clusters':3,
'Number_of_BoxPlots_for_Subject_Clusters': 3,
}
Vulnerability_viz(param_Illinois)
Vulnerability_log(param_Illinois)