| |

Socio-Demographic Determinants and Spatial Dependencies of Healthcare Facility Accessibility in Colorado

Introduction

Access to healthcare facilities is a critical determinant of public health outcomes and overall well-being. Geographic proximity to healthcare services such as hospitals, clinics, pharmacies, dentists, doctors, and emergency rooms plays a pivotal role in ensuring timely medical care and reducing health disparities. In Colorado, the diverse geography and population distribution present unique challenges and opportunities for healthcare accessibility. This study aims to evaluate the spatial accessibility of various healthcare facilities across Colorado using geographic information systems (GIS) and spatial analysis techniques. Specifically, it examines the spatial distribution of healthcare facilities and analyzes the socio-demographic factors that influence access to these services.

Methodology

Data Collection and Preprocessing

Healthcare Facility Data: Locations of healthcare facilities, including pharmacies, hospitals, dentists, doctors, clinics, and emergency rooms, were sourced from OpenStreetMap. These data points were categorized based on facility type and used to calculate drive time isochrones for each category.

Drive Time Isochrones: Isochrones representing areas accessible within a specified drive time were calculated for each category of healthcare facility using QGIS. The drive times for each facility type were determined based on existing literature and estimates:

  • Hospitals: 14 minutes (Pew Research Center, 2018)
  • Clinics: 17.5 minutes (Washington State Health Services Research Project, 2013)
  • Doctors: 17.5 minutes (Washington State Health Services Research Project, 2013)
  • Dentists: 17.5 minutes (Estimate based on clinics and doctors)
  • Pharmacies: 5 minutes (Kleinman, 2020)
  • Emergency Rooms: 17.9 minutes (Washington State Health Services Research Project, 2013)

Census Data: American Community Survey (ACS) 2022 data were utilized to obtain socio-demographic variables at the census tract level. The variables included total population, median age, median income, racial composition (as percentages of the total population), and the proportion of households without a vehicle. The specific ACS variables used were:

  • Total population (B01003_001)
  • Median age (B01002_001)
  • Median income (B19013_001)
  • Race (as percentages of the total population):
    • White (B03002_003 as a percentage of B01003_001)
    • Black (B03002_004 as a percentage of B01003_001)
    • Asian (B03002_006 as a percentage of B01003_001)
    • Hispanic (B03002_012 as a percentage of B01003_001)
  • No vehicle households (B08014_003)

The racial composition was calculated as the percentage of each racial group relative to the total population within each census tract, thereby normalizing these variables to account for varying population sizes across tracts.

Spatial Analysis

Isochrone Intersections: The isochrones for each healthcare facility category were intersected with census tracts to determine the count of isochrones intersecting each tract. This analysis involved transforming both the isochrones and census tract data to a common coordinate reference system (CRS: 32613) and performing spatial join operations in R.

library(sf)
library(dplyr)
gpkg_path = "healthcare_isochrones.gpkg"
count_data <- st_read("healthcare_access.gpkg", layer="count_data")
census_tracts <- st_read("healthcare_access.gpkg", layer="census_data")
# Transform CRS
desired_crs <- 32613
count_data <- st_transform(count_data, crs = desired_crs)
census_tracts <- st_transform(census_tracts, crs = desired_crs)
isochrone_layers <- list(
    clinic_isochrones = st_read(gpkg_path, layer = "clinics_17_5minute_isochrones"),
    pharmacy_isochrones = st_read(gpkg_path, layer = "pharmacy_5_minute_isochrones"),
    hospital_isochrones = st_read(gpkg_path, layer = "hospital_14minute_isochrones"),
    dentist_isochrones = st_read(gpkg_path, layer = "dentist_17_5minute_isochrones"),
    doctors_isochrones = st_read(gpkg_path, layer = "doctors_17_5minute_isochrones"),
    emergency_isochrones = st_read(gpkg_path, layer = "emergency_17_9minute_isochrones")
)
# Count isochrone intersections
census_tracts_final <- census_tracts
for (layer_name in names(isochrone_layers)) {
    isochrone_layer <- st_transform(isochrone_layers[[layer_name]], crs = desired_crs)
    joined_data <- st_join(census_tracts, isochrone_layer, join = st_intersects)
    
    count_field_name <- paste0(layer_name, "_count")
    joined_data <- joined_data %>%
        group_by(GEOID) %>%
        summarize(!!count_field_name := n()) %>%
        ungroup() %>%
        distinct(GEOID, .keep_all = TRUE)
    
    joined_data$geom <- NULL
    census_tracts_final <- census_tracts_final %>%
        left_join(joined_data[, c("GEOID", count_field_name)], by = "GEOID")
}
st_write(census_tracts_final, "healthcare_access.gpkg", layer = "count_data", delete_layer=T)

Statistical Analysis

Regression Analysis: To investigate the factors influencing the accessibility of healthcare facilities, spatial lag variables were created, and Poisson regression models were initially fitted. Overdispersion was assessed using Pearson’s chi-squared statistic, and negative binomial regression models were applied to categories exhibiting overdispersion. An alpha level of 0.01 was used for significance testing after applying the Bonferroni adjustment.

library(sf)
library(MASS)
library(ggplot2)
library(kableExtra)
library(knitr)
gpkg_path <- "Z:/Ross/colorado_healthcare_access/healthcare_access.gpkg"
main_count_data <- st_read(dsn = gpkg_path, layer = "count_data")
coords <- st_coordinates(st_centroid(main_count_data))
listw <- nb2listw(knn2nb(knearneigh(coords, k = 4)), style="W")
p_adjusted <- 0.05 / 5
# Create spatial lag variables
main_count_data$pharmacy_lag = lag.listw(listw, main_count_data$pharmacy_isochrones_count, zero.policy = TRUE)
main_count_data$hospital_lag = lag.listw(listw, main_count_data$hospital_isochrones_count, zero.policy = TRUE)
main_count_data$dentist_lag = lag.listw(listw, main_count_data$dentist_isochrones_count, zero.policy = TRUE)
main_count_data$doctors_lag = lag.listw(listw, main_count_data$doctors_isochrones_count, zero.policy = TRUE)
main_count_data$emergency_lag = lag.listw(listw, main_count_data$emergency_isochrones_count, zero.policy = TRUE)
main_count_data$clinic_lag = lag.listw(listw, main_count_data$clinic_isochrones_count, zero.policy = TRUE)
dependent_vars <- c("pharmacy_isochrones_count", "hospital_isochrones_count", 
                    "dentist_isochrones_count", "doctors_isochrones_count", 
                    "emergency_isochrones_count", "clinic_isochrones_count")
independent_vars <- c("estimate_total_pop", "estimate_median_age", "estimate_median_income",
                      "perc_race_white", "perc_race_black",
                      "perc_race_asian", "perc_race_hispanic",
                      "perc_no_vehicle")
poisson_models <- list()
overdispersion_results <- data.frame(Model = character(), Overdispersion = logical(), Theta = numeric(), stringsAsFactors = FALSE)
for(dep_var in dependent_vars) {
    # Extract the base name for the lag variable
    base_var_name <- gsub("_isochrones_count", "", dep_var)
    
    formula_str <- paste(dep_var, "~", paste(independent_vars, collapse = " + "), "+", paste0(base_var_name, "_lag"))
    formula <- as.formula(formula_str)
    
    poisson_model <- glm(formula, family = poisson(), data = main_count_data)
    
    poisson_models[[dep_var]] <- poisson_model
    
    # Check for overdispersion: Pearson chi-squared divided by the degrees of freedom
    theta <- sum(residuals(poisson_model, type = "pearson")^2) / poisson_model$df.residual
    
    # Determine if overdispersion is present (theta significantly greater than 1)
    overdispersion_present <- theta > 1
    
    overdispersion_results <- rbind(overdispersion_results, data.frame(Model = dep_var, Overdispersion = overdispersion_present, Theta = theta))
}
nb_required <- c("dentist_isochrones_count", "doctors_isochrones_count",
                 "clinic_isochrones_count")
final_models <- list()
for(dep_var in dependent_vars) {
    base_var_name <- gsub("_isochrones_count", "", dep_var)
    
    formula_str <- paste(dep_var, "~", paste(independent_vars, collapse = " + "), "+", paste0(base_var_name, "_lag"))
    formula <- as.formula(formula_str)
    
    if(dep_var %in% nb_required) {
        # Fit Negative Binomial model
        final_model <- glm.nb(formula, data = main_count_data, control = glm.control(maxit = 100))
    } else {
        # Fit Poisson model
        final_model <- glm(formula, family = poisson(), data = main_count_data)
    }
    
    # Store the model in the list
    final_models[[dep_var]] <- final_model
}

Results

After calculating the initial Poisson regressions to evaluate overdispersion, it was determined that the following were overdispersed: dentists, doctors, and clinics. For those datasets, negative binomial models were used.

Poisson Regression for Pharmacy Isochrones Count

The Poisson regression model for the number of pharmacy isochrones intersecting each census tract revealed several significant variables. The total population had a significant positive association (estimate = 0.00002259, p = 0.02225). The percentage of Asian residents was also significant (estimate = 0.01276, p = 0.03739). The number of households without a vehicle was a significant negative predictor (estimate = -0.005898, p = 0.00129). The spatial lag variable for pharmacies was highly significant (estimate = 0.2457, p < 0.001), indicating strong spatial dependence.

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)0.14250.48860.2920.77061-0.8143 to 1.0993
Total Population0.000022590.0000098792.2860.022250.00000322 to 0.00004196
Median Age-0.0039030.002353-1.6590.09712-0.008515 to 0.000709
Median Income0.00000032450.00000050280.6450.51871-0.000000661 to 0.000001310
Percent White0.00027420.0051280.0530.95736-0.009777 to 0.010325
Percent Black-0.00043170.005889-0.0730.94156-0.012165 to 0.011301
Percent Asian0.012760.0061312.0810.037390.000743 to 0.024777
Percent Hispanic-0.00046150.005031-0.0920.92691-0.010323 to 0.009400
Households w/ No Vehicle-0.0058980.001833-3.2180.00129-0.009491 to -0.002305
Spatial Lag0.24570.00598741.050<0.0010.2340 to 0.2574

The model’s goodness-of-fit measures included a residual deviance of 675.98 on 1415 degrees of freedom and an AIC of 4549.2.

Poisson Regression for Hospital Isochrones Count

For the number of hospital isochrones, the Poisson regression model identified a highly significant spatial lag effect (estimate = 0.2510, p < 0.001), indicating strong spatial dependence. No other variables showed significant associations at the 0.01 alpha level.

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)-0.082540.5401-0.1530.879-1.1407 to 0.9756
Total Population0.000011680.000010481.1140.265-0.00000987 to 0.00003323
Median Age0.0027840.0027131.0260.305-0.002532 to 0.008100
Median Income0.00000087130.00000055521.5690.117-0.000000216 to 0.000001958
Percent White-0.0020690.005673-0.3650.715-0.013188 to 0.009050
Percent Black0.0073910.0064151.1520.249-0.005183 to 0.019965
Percent Asian0.0077360.0066581.1620.245-0.005314 to 0.020786
Percent Hispanic-0.0023480.005524-0.4250.671-0.013175 to 0.008479
Households w/ No Vehicle0.0022560.0020631.0940.274-0.001788 to 0.006300
Spatial Lag0.25100.00509049.308<0.0010.2400 to 0.2620

The model had a residual deviance of 364.8 on 1415 degrees of freedom and an AIC of 4135.5.

Negative Binomial Regression for Dentist Isochrones Count

The negative binomial regression model for dentist isochrones highlighted several significant predictors at the 0.01 alpha level. The total population had a significant positive association (estimate = 0.00007107, p < 0.001). Median age was significantly negatively associated with dentist accessibility (estimate = -0.02431, p < 0.001). Median income showed a significant positive association (estimate = 0.000003155, p < 0.001). The number of households without a vehicle was significantly negatively associated with dentist accessibility (estimate = -0.005499, p = 0.03143). The spatial lag variable was highly significant (estimate = 0.03319, p < 0.001).

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)1.7340.54273.1960.001390.6706 to 2.7974
Total Population0.000071070.000010017.098<0.0010.00005145 to 0.00009069
Median Age-0.024310.002671-9.104<0.001-0.029555 to -0.019065
Median Income0.0000031550.00000061805.105<0.0010.000001943 to 0.000004367
Percent White0.0075830.0056921.3320.18278-0.003573 to 0.018739
Percent Black-0.00034920.006757-0.0520.95879-0.013594 to 0.012896
Percent Asian0.0044340.0071940.6160.53763-0.009667 to 0.018535
Percent Hispanic-0.00048590.005559-0.0870.93034-0.011382 to 0.010410
Households w/ No Vehicle-0.0054990.002556-2.1520.03143-0.010509 to -0.000489
Spatial Lag0.033190.000583356.902<0.0010.032046 to 0.034334

The model’s residual deviance was 1618.3 on 1415 degrees of freedom with an AIC of 11812.

Negative Binomial Regression for Doctors Isochrones Count

For doctors isochrones, the negative binomial model found significant positive associations with total population (estimate = 0.00006532, p < 0.001) and the percentage of Asian residents (estimate = 0.01811, p = 0.000949). Median age was significantly negatively associated with doctors’ accessibility (estimate = -0.01481, p < 0.001). Median income also showed a significant positive association (estimate = 0.000001919, p < 0.001). The spatial lag variable was highly significant (estimate = 0.06104, p < 0.001).

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)0.79750.42761.8650.062203-0.0404 to 1.6354
Total Population0.000065320.0000079148.253<0.0010.0000498 to 0.0000808
Median Age-0.014810.002152-6.884<0.001-0.019028 to -0.010592
Median Income0.0000019190.00000046864.096<0.0010.000001001 to 0.000002837
Percent White0.0079490.0044981.7670.077150-0.000868 to 0.016766
Percent Black0.0073110.0052531.3920.163995-0.002984 to 0.017606
Percent Asian0.018110.0054783.3050.0009490.007374 to 0.028846
Percent Hispanic0.0038010.0043730.8690.384753-0.004771 to 0.012373
Households w/ No Vehicle-0.0032160.001921-1.6740.094165-0.007001 to 0.000569
Spatial Lag0.061040.000925065.983<0.0010.059226 to 0.062854

The model’s residual deviance was 1597.8 on 1415 degrees of freedom with an AIC of 9181.1.

Poisson Regression for Emergency Isochrones Count

The Poisson regression model for emergency isochrones showed a significant positive association with the total population (estimate = 0.00003152, p < 0.001), median income (estimate = 0.000001281, p = 0.005), and a highly significant spatial lag effect (estimate = 0.1815, p < 0.001), indicating spatial dependence. No other variables were significant at the 0.01 alpha level.

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)0.086140.44340.1940.845969-0.7820 to 0.9543
Total Population0.000031520.0000085973.667<0.0010.00001467 to 0.00004837
Median Age-0.000017540.002301-0.0080.993919-0.004528 to 0.004493
Median Income0.0000012810.00000045812.7950.0051870.000000383 to 0.000002179
Percent White-0.0012610.004665-0.2700.786953-0.010405 to 0.007883
Percent Black0.0072120.0053041.3600.173875-0.003183 to 0.017607
Percent Asian0.0062910.0053171.1830.236659-0.004131 to 0.016713
Percent Hispanic0.0012710.0045180.2810.778407-0.007565 to 0.010107
Households w/ No Vehicle0.00056200.0017490.3210.747976-0.002846 to 0.003970
Spatial Lag0.18150.00310358.486<0.0010.1754 to 0.1876

The residual deviance was 660.22 on 1415 degrees of freedom with an AIC of 4787.5.

Negative Binomial Regression for Clinic Isochrones Count

The negative binomial regression model for clinic isochrones identified significant positive associations with total population (estimate = 0.00006, p < 0.001), median age (estimate = -0.017, p < 0.001), median income (estimate = 0.000005, p < 0.001), the percentage of Asian residents (estimate = 0.0354, p < 0.001). The spatial lag variable was also highly significant.

VariableEstimateStd. Errorz valuePr(>|z|)95% CI
(Intercept)1.7560.56023.1340.001730.657 to 2.855
Total Population0.000065930.000010316.395<0.0010.00004572 to 0.00008614
Median Age-0.017270.002759-6.257<0.001-0.022677 to -0.011863
Median Income0.0000044590.00000063167.060<0.0010.000003221 to 0.000005697
Percent White0.00063540.0058690.1080.91379-0.010888 to 0.012158
Percent Black0.014480.0069182.0940.036280.000920 to 0.028040
Percent Asian0.035820.0072864.916<0.0010.021540 to 0.050100
Percent Hispanic-0.0051640.005746-0.8990.36881-0.016428 to 0.006100
Households w/ No Vehicle-0.00049350.002725-0.1810.85631-0.005845 to 0.004858
Spatial Lag0.029650.000502159.044<0.0010.028670 to 0.030630

The model had a residual deviance of 1557.2 on 1415 degrees of freedom with an AIC of 10441.

Discussion

The findings of this study provide valuable insights into the factors influencing healthcare facility accessibility in Colorado, with a focus on spatial dependence and socio-demographic variables. The consistent significance of the spatial lag variable across all facility types highlights the importance of spatial dependence in healthcare access, suggesting that the accessibility of healthcare facilities in one area is strongly related to the accessibility in neighboring areas. This spatial clustering effect underscores the need for regional planning and coordination to improve healthcare access comprehensively.

Socio-Demographic Factors

Total Population: The significant positive association between total population and accessibility for several facility types, including dentists, doctors, emergency rooms, and clinics, indicates that higher population densities are correlated with better access to healthcare services. This finding aligns with expectations, as densely populated areas are likely to have more healthcare facilities due to higher demand.

Median Age: Median age was a significant negative predictor for the accessibility of dentist, doctors, and clinic isochrones, suggesting that areas with older populations may have reduced access to these facilities. This could be due to various factors, including the location preferences of younger populations for urban areas with better access to healthcare and amenities, while older populations might reside in more suburban or rural areas with fewer healthcare facilities.

Median Income: Median income was a significant positive predictor for the accessibility of dentist, doctor, emergency room, and clinic isochrones. This indicates that areas with higher median incomes tend to have better access to these healthcare facilities. While this may reflect the broader socioeconomic advantages that accompany higher income levels, it also underscores the disparities in healthcare access, where lower-income areas may struggle with reduced availability of essential health services.

Racial Composition: The percentage of Asian residents was a significant positive predictor for doctors and clinics. Conversely, the percentage of white or hispanic residents was not a statistically significant predictor of any healthcare facility type. These findings suggest that certain minority populations may have relatively better access to specific healthcare services, although the underlying reasons for these disparities warrant further investigation. It is crucial to understand whether these patterns are due to targeted healthcare services in these communities, socioeconomic factors, or other underlying causes.

Vehicle Ownership: The number of households without a vehicle a significant predictor for the accessibility of pharmacies. This finding suggests that vehicle ownership does not have a direct impact on healthcare access other than for pharmacies, indicating that other factors may be more critical in determining access to other healthcare facilities.

Policy Implications

The results of this study suggest several policy implications for improving healthcare access in Colorado:

  1. Regional Planning: The strong spatial dependence observed in healthcare accessibility underscores the need for regional coordination in healthcare planning. Policies should aim to address regional disparities and ensure that neighboring areas are considered in healthcare facility placement.
  2. Transportation Solutions: Given the significant barrier posed by lack of vehicle ownership, enhancing public transportation options to healthcare facilities and considering non-traditional models of care delivery, such as mobile clinics or telehealth, could improve access for car-less populations.
  3. Targeted Interventions: Understanding the specific needs of minority populations and older adults can help design targeted interventions to address their unique healthcare access challenges. Policies should focus on reducing disparities and ensuring equitable access to healthcare services across all demographic groups.
  4. Community-Based Planning: Engaging local communities in healthcare planning processes can help identify specific barriers and opportunities for improving access. Community-based approaches can ensure that healthcare resources are aligned with the needs and preferences of the populations they serve.

Limitations and Future Research

While this study provides important insights into healthcare accessibility in Colorado, several limitations should be acknowledged. The use of cross-sectional data limits the ability to infer causal relationships. Additionally, the study relies on the availability and accuracy of OpenStreetMap data for healthcare facility locations, which may not capture all facilities or their current statuses. Future research should explore longitudinal data to examine changes in healthcare accessibility over time and investigate the impact of recent policy interventions.

Furthermore, qualitative research could complement these findings by exploring the lived experiences of individuals in areas with varying levels of healthcare access. Understanding the perspectives of healthcare providers and community members can provide a more comprehensive picture of the barriers and facilitators to healthcare access.

Conclusion

This study provides a detailed analysis of healthcare facility accessibility in Colorado, highlighting the significant roles of spatial dependence and socio-demographic factors. Spatial dependence was a consistent and significant factor across all types of healthcare facilities, indicating the need for regional planning and coordination to address healthcare access disparities.

The findings show that areas with higher population densities generally have better access to healthcare facilities. Older populations and households without vehicles face greater challenges in accessing healthcare, underscoring the need for targeted interventions to support these vulnerable groups.

The analysis of racial composition revealed that certain minority populations, such as Asian and black residents, have varying levels of access to specific healthcare services. This suggests the need for further investigation to ensure equitable access for all racial groups.

Overall, the study emphasizes the need for comprehensive, multi-faceted approaches to improve healthcare access in Colorado. Policy implications include regional planning, enhancing transportation solutions, designing targeted interventions for vulnerable populations, and engaging local communities in the healthcare planning process.

Similar Posts

Leave a Reply