Appendix B: Ohio Children’s Opportunity Index (OCOI) Construction (2017–Complete Version)


1 Introduction

This appendix documents the construction of the single period Ohio Children’s Opportunity Index (OCOI) that includes all 53 of the collected constituent measures. The code in this document assumes the database of constituent measures—each assigned to a domain—is already prepared. A separate document describes each variables in each domain using a conceptual English definition, univariate descriptive results, correlation analyses, and choropleth map visualization.

The steps are as follows:

  • Standardize the constituent measures (transform to z-scores)
  • Average the standardized measures within each domain
  • Define the domain scores as an exponential transformation of the track-ranked values of each domain-average
  • Define the Ohio Children’s Opportunity Index as an unweighted average of the domain scores
  • Plot each domain score and the final OCOI score as choropleth maps

2 Domain scores

The domain scores are a function of the constituent measures within each domain. We are first standardized each individual constituent measure by transforming it to a z-score (centering it around zero and dividing by its standard deviation). We save that value for plotting. We then transform the z-score further to an exponential distribution that incorporates certain desirable cancellation properties, discussed in the next paragraph, into the final OCOI.

Following is a simplified example characterizing the benefits of the transformation. If we used untransformed z-scores or domain rank values, then one unit of opportunity contribution by one domain could completely cancel-out one unit of deprivation contributed by another domain (i.e., zero-sum). The exponential transform adjusts these cancellation properties in such a way that such a cancellation would require more than one unit of opportunity to cancel out one unit of deprivation.

This choice is based on key principles stemming from research on the creation of deprivation idices in the UK (Noble, Wright, Smith & Dibbens, 2006).

Below is the R code used in the transformation. We plot univariate and bivariate information about the resulting set of untransformed and transformed domain scores.

2.1 Code

# load the constituent measure data
load("../../../data/OCOI/ConstituentMeasures.14.17.RData")

# subset to only those in that play a role in the OCOI
OCOI.17 <- OCOI.17[,c("tract",unlist(D))]

# standardize variables (create z-scores)
for(i in unlist(D))
  OCOI.17[,i] <- scale(OCOI.17[,i], scale=T, center=T)

# create a new data frame for the domain scores
OD.17 <- OCOI.17[,1,drop=F]

# and an intermediate data frame for untransformed domain averages (for data delivery)
ODZ.17 <- OCOI.17[,1,drop=F]

# and an intermediate data frame for ranks (for data delivery)
ODR.17 <- OCOI.17[,1,drop=F]

# average the measures in their respective domains and transform
for(d in names(D)) {
  # sum
  ODZ.17[,d] <- rowSums(OCOI.17[,D[[d]]], na.rm=T)
  
  # impute the median for any tracts with NA in the domain score
  ODZ.17[is.na(ODZ.17[,d]), d] <- median(ODZ.17[,d], na.rm=T)

  # rank
  ODR.17[,d] <- rank(ODZ.17[,d]) - 1
  
  # scale to [0,1]
  ODR.17[,d] <- ODR.17[,d] / max(ODR.17[,d])
  
  # exponential transform
  OD.17[,d] <- -23 * log(1 - ODR.17[,d] * (1 - exp(-100/23)))
}

# name the rows according to tract for easier merging during later mapping
rownames(OD.17) <- OD.17$tract

2.2 Visualize the result

2.2.1 Non-transformed domain values

Take a look at histograms of the domain sum variables.

2.2.2 Transformed domain values

Take a look at histograms of the domain averages that have been transformed.

2.3 Correlations among the domains

2.4 Construct the OCOI as an unweighted mean of the domain scores

We calculate the OCOI for a tract as the mean of its transformed domain scores, and then we reverse the OCOI such that higher values reflect more overall opportunity.

2.5 Visualize the OCOI

Below we see histograms of the DI and the OCOI side-by-side. They are—as they should be—mirror images.

2.6 Variance of OCOI attributable to domain scores

  totVar uniqVar
HS 0.658 0.017
FS 0.606 0.020
ED 0.595 0.020
CR 0.523 0.023
HL0 0.389 0.029
EN 0.328 0.031
AC 0.181 0.036
HL1 0.072 0.037

3 Validation of the OCOI

This section provides evidence of the criterion validity of the 2017 OCOI that includes all available constituent measures. It includes results of correlation analyses between 5 outcome variables and the single OCOI score as well as the proportion of variance explained in the same 5 outcome variables in multiple linear regressions of the outcome on all 8 domain scores (predictors) simultaneously. All resuts are in the tables below. Thus, the correlations provide information about the validity of the OCOI, while the multiple regression results provide information about the validity of the collection of domain scores.

Five outcomes were examined:

  • all-cause age-adjusted mortality (death_rate) from OOI
  • asthma (from the HL1 domain)
  • life expectancy (“le”) from CDC
  • child severe mental illness
  • pre-term birth
Outcome Correlation with OCOI
(p-value)
Multiple Regression
R-squared
death rate -0.12
(0.00)
0.05
asthma -0.56
(0.00)
0.35
life expectancy 0.70
(0.00)
0.54
child severe mental illness -0.32
(0.00)
0.41
pre-term birth -0.52
(0.00)
0.41

4 Domain and OCOI Choropleth Maps

This section contains choropleth maps of each of the domain scores (transformed), the overall deprivation index (DI), and the reversed deprivation index (i.e., the Ohio Children’s Opportunity Index or OCOI). These plots provide a means for determining the face validity of each domain score and the overall OCOI. All variables, except the OCOI, are oriented such that higher values (brighter colors) imply higher levels of deprivation. For the OCOI, higher values (brighter areas) correspond with higher levels of opportunity.

4.1 FS

4.2 HL0

4.3 HL1

4.4 HS

4.5 AC

4.6 ED

4.7 EN

4.8 CR

4.9 DI

4.10 OCOI