library(pacman)
p_load(kirkegaard, readr, lavaan, doFuture, sf, rms, broom, lavaanPlot, ggeffects)
options(digits = 2)
#parallel
registerDoFuture()
plan(multiprocess(workers = 7))
## Warning: [ONE-TIME WARNING] Forked processing ('multicore') is disabled
## in future (>= 1.13.0) when running R from RStudio, because it is
## considered unstable. Because of this, plan("multicore") will fall
## back to plan("sequential"), and plan("multiprocess") will fall back to
## plan("multisession") - not plan("multicore") as in the past. For more
## details, how to control forked processing or not, and how to silence this
## warning in future R sessions, see ?future::supportsMulticore
#this should return about 1 sec
system.time(plyr::llply(1:3, function(x) Sys.sleep(1), .parallel = T))
## user system elapsed
## 0.072 0.009 1.536
#prior study
kirk16 = silence(read_csv("data/county_data.csv")[-1, ]) %>% rename(FIPS = X1)
#skip row 1 which is Alaska state
#SEDA
seda_CS = haven::read_dta("data/SEDA_county_long_CS_v21.dta")
#average across years, subjects, datasets
averager = function(x, score = "mn_all", subject = "subject", sample_size = "totgyb_all", county = "countyid", group = "year_grade") {
#standardize within subject and year and group
x2 = x %>% plyr::ddply(c(group, subject), function(dd) {
dd[[score]] %<>% standardize()
dd
})
#average subject scores
x3 = x2 %>% plyr::ddply(c(county, group), function(dd) {
y = data.frame(
county = dd[[county]][1],
group = dd[[group]][1],
sample_size = dd[[sample_size]][1],
score = wtd_mean(dd[[score]], dd[[sample_size]])
)
y
}, .parallel = T)
#average county scores
x4 = x3 %>% plyr::ddply("county", function(dd) {
y = data.frame(
county = dd$county[1],
n = sum(dd$sample_size),
score = wtd_mean(dd$score, dd$sample_size)
)
y
}, .parallel = T)
#save other info as attribute
attr(x4, "indicators") = x3 %>%
select(countyid, group, score) %>%
spread(key = group, value = score)
# browser()
x4
}
#compute county means by dataset
seda_CS_avg = seda_CS %>% mutate(year_grade = str_glue("{year}_{grade}")) %>% averager()
#indicator correlations, year-grade groups
#heatmap
attr(seda_CS_avg, "indicators") %>% .[-1] %>% GG_heatmap()
#summary values
attr(seda_CS_avg, "indicators") %>% .[-1] %>%
wtd.cors() %>%
MAT_half() %>%
describe()
## vars n mean sd median trimmed mad min max range skew kurtosis se
## X1 1 861 0.77 0.06 0.76 0.76 0.06 0.62 0.92 0.3 0.11 -0.43 0
#no dups
assert_that(!any(duplicated(kirk16$FIPS)))
## [1] TRUE
assert_that(!any(duplicated(seda_CS_avg$county)))
## [1] TRUE
#merge
d = full_join(kirk16, seda_CS_avg %>% rename(FIPS = county, seda_score = score, seda_n = n) %>% mutate(FIPS = FIPS %>% as.character() %>% as.numeric()))
## Joining, by = "FIPS"
#rename
d$IQ = d$seda_score
d$popsqrt = d$Total.Population %>% sqrt()
d$homogeneity = d$SIRE_homogeneity
#SIRE to 0-1 scale
SIREs = c("White", "Black", "Hispanic", "Asian", "Amerindian", "Other")
for (v in SIREs) d[[v]] %<>% divide_by(100)
#impute 0's for green
# d$green16_frac_miss = is.na(d$green16_frac)
# d$green16_frac[is.na(d$green16_frac) & !is.na(d$dem16_frac)] = 0
# dem advantage
d$dem16_advantage = d$dem16_frac - d$rep16_frac
#Map data
#load shapefile
#https://catalog.data.gov/dataset/tiger-line-shapefile-2017-nation-u-s-current-county-and-equivalent-national-shapefile
county_sf = st_read("data/spatial/tl_2017_us_county.shp")
## Reading layer `tl_2017_us_county' from data source `/media/truecrypt1/Projects/USA president election counties/data/spatial/tl_2017_us_county.shp' using driver `ESRI Shapefile'
## Simple feature collection with 3233 features and 17 fields
## geometry type: MULTIPOLYGON
## dimension: XY
## bbox: xmin: -180 ymin: -15 xmax: 180 ymax: 71
## epsg (SRID): 4269
## proj4string: +proj=longlat +datum=NAD83 +no_defs
#make FIPS
county_sf$FIPS = (as.character(county_sf$STATEFP) + as.character(county_sf$COUNTYFP)) %>% as.numeric()
county_sf = county_sf %>% filter(FIPS %in% d$FIPS)
#join in data
d2 = left_join(county_sf, d, by = "FIPS")
#area
d2 = d2 %>% mutate(area = d2 %>% st_area() %>% as.numeric(),
density_raw = Total.Population / area,
density = density_raw %>% log10())
#merge area back to main
d = left_join(d, d2 %>% as.data.frame() %>% select(FIPS, area, density))
## Joining, by = "FIPS"
#variable lists
outcomes = c("dem16_frac", "dem12_frac", "dem08_frac", "rep16_frac", "rep12_frac", "rep08_frac", "green16_frac", "libert16_frac")
preds = c("IQ", "S", "Black", "Hispanic", "Asian", "Amerindian", "Other", "homogeneity", "density", "median_age")
#weights
wtd.cors(d[c(preds, outcomes)], weight = d$popsqrt) %>% write_clipboard()
## IQ S Black Hispanic Asian Amerindian Other
## IQ 1.00 0.77 -0.46 -0.25 0.13 -0.23 -0.02
## S 0.77 1.00 -0.52 -0.08 0.32 -0.17 0.12
## Black -0.46 -0.52 1.00 -0.09 0.01 -0.10 -0.08
## Hispanic -0.25 -0.08 -0.09 1.00 0.25 -0.03 0.02
## Asian 0.13 0.32 0.01 0.25 1.00 -0.06 0.52
## Amerindian -0.23 -0.17 -0.10 -0.03 -0.06 1.00 0.18
## Other -0.02 0.12 -0.08 0.02 0.52 0.18 1.00
## Homogeneity 0.37 0.20 -0.56 -0.49 -0.49 -0.08 -0.28
## Density 0.18 0.23 0.28 0.16 0.49 -0.25 0.10
## Median age 0.17 0.06 -0.23 -0.37 -0.24 -0.11 -0.11
## Dem16 frac -0.11 0.07 0.45 0.33 0.53 -0.01 0.19
## Dem12 frac -0.14 0.02 0.39 0.23 0.44 0.03 0.18
## Dem08 frac -0.10 0.06 0.33 0.20 0.43 0.03 0.18
## Rep16 frac 0.07 -0.14 -0.38 -0.33 -0.53 -0.01 -0.22
## Rep12 frac 0.13 -0.04 -0.37 -0.23 -0.45 -0.03 -0.19
## Rep08 frac 0.09 -0.08 -0.31 -0.20 -0.43 -0.03 -0.18
## Green16 frac 0.09 0.35 -0.25 0.13 0.38 0.16 0.44
## Libert16 frac 0.29 0.46 -0.48 0.05 0.03 0.18 0.19
## Homogeneity Density Median age Dem16 frac Dem12 frac
## IQ 0.37 0.18 0.17 -0.11 -0.14
## S 0.20 0.23 0.06 0.07 0.02
## Black -0.56 0.28 -0.23 0.45 0.39
## Hispanic -0.49 0.16 -0.37 0.33 0.23
## Asian -0.49 0.49 -0.24 0.53 0.44
## Amerindian -0.08 -0.25 -0.11 -0.01 0.03
## Other -0.28 0.10 -0.11 0.19 0.18
## Homogeneity 1.00 -0.45 0.46 -0.58 -0.43
## Density -0.45 1.00 -0.37 0.64 0.54
## Median age 0.46 -0.37 1.00 -0.34 -0.23
## Dem16 frac -0.58 0.64 -0.34 1.00 0.96
## Dem12 frac -0.43 0.54 -0.23 0.96 1.00
## Dem08 frac -0.37 0.52 -0.20 0.93 0.98
## Rep16 frac 0.55 -0.62 0.37 -0.99 -0.94
## Rep12 frac 0.42 -0.53 0.22 -0.95 -1.00
## Rep08 frac 0.34 -0.51 0.19 -0.92 -0.98
## Green16 frac -0.11 0.17 -0.10 0.45 0.47
## Libert16 frac 0.18 -0.07 -0.11 -0.01 0.00
## Dem08 frac Rep16 frac Rep12 frac Rep08 frac Green16 frac
## IQ -0.10 0.07 0.13 0.09 0.09
## S 0.06 -0.14 -0.04 -0.08 0.35
## Black 0.33 -0.38 -0.37 -0.31 -0.25
## Hispanic 0.20 -0.33 -0.23 -0.20 0.13
## Asian 0.43 -0.53 -0.45 -0.43 0.38
## Amerindian 0.03 -0.01 -0.03 -0.03 0.16
## Other 0.18 -0.22 -0.19 -0.18 0.44
## Homogeneity -0.37 0.55 0.42 0.34 -0.11
## Density 0.52 -0.62 -0.53 -0.51 0.17
## Median age -0.20 0.37 0.22 0.19 -0.10
## Dem16 frac 0.93 -0.99 -0.95 -0.92 0.45
## Dem12 frac 0.98 -0.94 -1.00 -0.98 0.47
## Dem08 frac 1.00 -0.92 -0.99 -1.00 0.49
## Rep16 frac -0.92 1.00 0.94 0.92 -0.51
## Rep12 frac -0.99 0.94 1.00 0.98 -0.50
## Rep08 frac -1.00 0.92 0.98 1.00 -0.51
## Green16 frac 0.49 -0.51 -0.50 -0.51 1.00
## Libert16 frac 0.06 -0.08 -0.03 -0.07 0.47
## Libert16 frac
## IQ 0.29
## S 0.46
## Black -0.48
## Hispanic 0.05
## Asian 0.03
## Amerindian 0.18
## Other 0.19
## Homogeneity 0.18
## Density -0.07
## Median age -0.11
## Dem16 frac -0.01
## Dem12 frac 0.00
## Dem08 frac 0.06
## Rep16 frac -0.08
## Rep12 frac -0.03
## Rep08 frac -0.07
## Green16 frac 0.47
## Libert16 frac 1.00
#no weights
wtd.cors(d[c(preds, outcomes)])
## IQ S Black Hispanic Asian Amerindian Other
## IQ 1.000 0.7586 -0.506 -0.221 0.127 -0.282 -0.045
## S 0.759 1.0000 -0.566 -0.111 0.233 -0.196 0.069
## Black -0.506 -0.5663 1.000 -0.107 0.013 -0.100 -0.087
## Hispanic -0.221 -0.1109 -0.107 1.000 0.139 -0.040 -0.025
## Asian 0.127 0.2331 0.013 0.139 1.000 -0.011 0.424
## Amerindian -0.282 -0.1960 -0.100 -0.040 -0.011 1.000 0.263
## Other -0.045 0.0687 -0.087 -0.025 0.424 0.263 1.000
## homogeneity 0.456 0.3673 -0.582 -0.439 -0.345 -0.157 -0.251
## density 0.132 0.0906 0.240 -0.042 0.347 -0.261 0.010
## median_age 0.204 0.1544 -0.223 -0.287 -0.220 -0.197 -0.062
## dem16_frac -0.208 -0.0887 0.499 0.192 0.423 0.078 0.131
## dem12_frac -0.210 -0.0974 0.407 0.097 0.331 0.126 0.120
## dem08_frac -0.154 -0.0480 0.325 0.065 0.319 0.123 0.106
## rep16_frac 0.152 0.0016 -0.415 -0.198 -0.435 -0.098 -0.159
## rep12_frac 0.194 0.0761 -0.379 -0.094 -0.334 -0.125 -0.120
## rep08_frac 0.140 0.0312 -0.299 -0.053 -0.316 -0.124 -0.103
## green16_frac 0.144 0.3277 -0.279 0.027 0.286 0.266 0.397
## libert16_frac 0.350 0.5243 -0.497 0.085 0.093 0.145 0.204
## homogeneity density median_age dem16_frac dem12_frac
## IQ 0.456 0.132 0.2044 -0.208 -0.210
## S 0.367 0.091 0.1544 -0.089 -0.097
## Black -0.582 0.240 -0.2233 0.499 0.407
## Hispanic -0.439 -0.042 -0.2873 0.192 0.097
## Asian -0.345 0.347 -0.2199 0.423 0.331
## Amerindian -0.157 -0.261 -0.1970 0.078 0.126
## Other -0.251 0.010 -0.0625 0.131 0.120
## homogeneity 1.000 -0.227 0.4391 -0.458 -0.293
## density -0.227 1.000 -0.3847 0.488 0.413
## median_age 0.439 -0.385 1.0000 -0.316 -0.213
## dem16_frac -0.458 0.488 -0.3162 1.000 0.948
## dem12_frac -0.293 0.413 -0.2128 0.948 1.000
## dem08_frac -0.202 0.395 -0.1761 0.912 0.980
## rep16_frac 0.416 -0.461 0.3335 -0.984 -0.935
## rep12_frac 0.271 -0.399 0.2026 -0.941 -0.998
## rep08_frac 0.174 -0.375 0.1605 -0.899 -0.974
## green16_frac 0.022 0.083 -0.0391 0.358 0.368
## libert16_frac 0.213 -0.078 -0.0025 0.017 0.074
## dem08_frac rep16_frac rep12_frac rep08_frac green16_frac
## IQ -0.154 0.1516 0.194 0.140 0.144
## S -0.048 0.0016 0.076 0.031 0.328
## Black 0.325 -0.4146 -0.379 -0.299 -0.279
## Hispanic 0.065 -0.1978 -0.094 -0.053 0.027
## Asian 0.319 -0.4354 -0.334 -0.316 0.286
## Amerindian 0.123 -0.0977 -0.125 -0.124 0.266
## Other 0.106 -0.1588 -0.120 -0.103 0.397
## homogeneity -0.202 0.4156 0.271 0.174 0.022
## density 0.395 -0.4610 -0.399 -0.375 0.083
## median_age -0.176 0.3335 0.203 0.161 -0.039
## dem16_frac 0.912 -0.9835 -0.941 -0.899 0.358
## dem12_frac 0.980 -0.9348 -0.998 -0.974 0.368
## dem08_frac 1.000 -0.9085 -0.982 -0.998 0.387
## rep16_frac -0.908 1.0000 0.934 0.902 -0.427
## rep12_frac -0.982 0.9345 1.000 0.979 -0.396
## rep08_frac -0.998 0.9020 0.979 1.000 -0.404
## green16_frac 0.387 -0.4266 -0.396 -0.404 1.000
## libert16_frac 0.130 -0.1303 -0.107 -0.148 0.476
## libert16_frac
## IQ 0.3504
## S 0.5243
## Black -0.4969
## Hispanic 0.0850
## Asian 0.0934
## Amerindian 0.1446
## Other 0.2040
## homogeneity 0.2130
## density -0.0782
## median_age -0.0025
## dem16_frac 0.0175
## dem12_frac 0.0745
## dem08_frac 0.1300
## rep16_frac -0.1303
## rep12_frac -0.1067
## rep08_frac -0.1480
## green16_frac 0.4762
## libert16_frac 1.0000
#pairwise n's
pairwiseCount(d[c(preds, outcomes)])
## IQ S Black Hispanic Asian Amerindian Other homogeneity
## IQ 3087 3081 3087 3087 3087 3087 3087 3087
## S 3081 3127 3127 3127 3127 3127 3127 3127
## Black 3087 3127 3143 3143 3143 3143 3143 3143
## Hispanic 3087 3127 3143 3143 3143 3143 3143 3143
## Asian 3087 3127 3143 3143 3143 3143 3143 3143
## Amerindian 3087 3127 3143 3143 3143 3143 3143 3143
## Other 3087 3127 3143 3143 3143 3143 3143 3143
## homogeneity 3087 3127 3143 3143 3143 3143 3143 3143
## density 3085 3124 3140 3140 3140 3140 3140 3140
## median_age 3087 3127 3143 3143 3143 3143 3143 3143
## dem16_frac 3060 3102 3111 3111 3111 3111 3111 3111
## dem12_frac 3061 3103 3112 3112 3112 3112 3112 3112
## dem08_frac 3061 3103 3112 3112 3112 3112 3112 3112
## rep16_frac 3060 3102 3111 3111 3111 3111 3111 3111
## rep12_frac 3061 3103 3112 3112 3112 3112 3112 3112
## rep08_frac 3061 3103 3112 3112 3112 3112 3112 3112
## green16_frac 2554 2592 2601 2601 2601 2601 2601 2601
## libert16_frac 3060 3102 3111 3111 3111 3111 3111 3111
## density median_age dem16_frac dem12_frac dem08_frac
## IQ 3085 3087 3060 3061 3061
## S 3124 3127 3102 3103 3103
## Black 3140 3143 3111 3112 3112
## Hispanic 3140 3143 3111 3112 3112
## Asian 3140 3143 3111 3112 3112
## Amerindian 3140 3143 3111 3112 3112
## Other 3140 3143 3111 3112 3112
## homogeneity 3140 3143 3111 3112 3112
## density 3140 3140 3111 3111 3111
## median_age 3140 3143 3111 3112 3112
## dem16_frac 3111 3111 3112 3111 3111
## dem12_frac 3111 3112 3111 3112 3112
## dem08_frac 3111 3112 3111 3112 3112
## rep16_frac 3111 3111 3112 3111 3111
## rep12_frac 3111 3112 3111 3112 3112
## rep08_frac 3111 3112 3111 3112 3112
## green16_frac 2601 2601 2601 2601 2601
## libert16_frac 3111 3111 3112 3111 3111
## rep16_frac rep12_frac rep08_frac green16_frac libert16_frac
## IQ 3060 3061 3061 2554 3060
## S 3102 3103 3103 2592 3102
## Black 3111 3112 3112 2601 3111
## Hispanic 3111 3112 3112 2601 3111
## Asian 3111 3112 3112 2601 3111
## Amerindian 3111 3112 3112 2601 3111
## Other 3111 3112 3112 2601 3111
## homogeneity 3111 3112 3112 2601 3111
## density 3111 3111 3111 2601 3111
## median_age 3111 3112 3112 2601 3111
## dem16_frac 3112 3111 3111 2601 3112
## dem12_frac 3111 3112 3112 2601 3111
## dem08_frac 3111 3112 3112 2601 3111
## rep16_frac 3112 3111 3111 2601 3112
## rep12_frac 3111 3112 3112 2601 3111
## rep08_frac 3111 3112 3112 2601 3111
## green16_frac 2601 2601 2601 2601 2601
## libert16_frac 3112 3111 3111 2601 3112
#basic scatterplots
scatter_input = expand_grid(x = preds, y = outcomes)
for (r in seq_along_rows(scatter_input)) {
gg = GG_scatter(d, scatter_input$x[r], scatter_input$y[r], weights = "popsqrt")
GG_save(str_glue("figures/scatter{r}.png"))
}
Basic regression models.
#single regressions
single_regs = expand_grid(outcome = outcomes,
pred = preds) %>%
as_tibble() %>%
plyr::ddply(c("outcome", "pred"), function(x) {
# browser()
fit = ols(as.formula(str_glue("{x$outcome} ~ {x$pred}")), data = d, weights = d$popsqrt)
fit_tidy = fit %>% summary.lm() %>% tidy()
tibble(
term = fit_tidy$term,
beta = fit_tidy$estimate,
se = fit_tidy$std.error,
p = fit_tidy$p.value,
r2adj = fit %>% summary.lm() %>% .$adj.r.squared
)
}) %>% as_tibble()
single_regs %>% print(n = Inf)
## # A tibble: 160 x 7
## outcome pred term beta se p r2adj
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 dem08_frac Amerindian Intercept 4.64e-1 2.65e-3 0. 3.35e-4
## 2 dem08_frac Amerindian Amerindian 7.97e-2 5.58e-2 1.53e- 1 3.35e-4
## 3 dem08_frac Asian Intercept 4.28e-1 2.69e-3 0. 1.87e-1
## 4 dem08_frac Asian Asian 1.56e+0 5.84e-2 3.49e-142 1.87e-1
## 5 dem08_frac Black Intercept 4.29e-1 3.06e-3 0. 1.09e-1
## 6 dem08_frac Black Black 3.47e-1 1.78e-2 5.46e- 80 1.09e-1
## 7 dem08_frac density Intercept 8.90e-1 1.27e-2 0. 2.73e-1
## 8 dem08_frac density density 9.92e-2 2.90e-3 2.10e-217 2.73e-1
## 9 dem08_frac Hispanic Intercept 4.43e-1 3.13e-3 0. 4.16e-2
## 10 dem08_frac Hispanic Hispanic 2.11e-1 1.81e-2 8.18e- 31 4.16e-2
## 11 dem08_frac homogenei… Intercept 6.43e-1 8.51e-3 0. 1.33e-1
## 12 dem08_frac homogenei… homogenei… -2.72e-1 1.24e-2 7.64e- 99 1.33e-1
## 13 dem08_frac IQ Intercept 4.64e-1 2.56e-3 0. 8.86e-3
## 14 dem08_frac IQ IQ -1.65e-2 3.10e-3 1.08e- 7 8.86e-3
## 15 dem08_frac median_age Intercept 7.11e-1 2.17e-2 8.48e-203 4.02e-2
## 16 dem08_frac median_age median_age -6.44e-3 5.62e-4 8.30e- 30 4.02e-2
## 17 dem08_frac Other Intercept 4.38e-1 3.64e-3 0. 3.12e-2
## 18 dem08_frac Other Other 1.42e+0 1.42e-1 1.98e- 23 3.12e-2
## 19 dem08_frac S Intercept 4.66e-1 2.63e-3 0. 3.89e-3
## 20 dem08_frac S S 1.03e-2 2.85e-3 2.99e- 4 3.89e-3
## 21 dem12_frac Amerindian Intercept 4.39e-1 2.85e-3 0. 5.49e-4
## 22 dem12_frac Amerindian Amerindian 9.86e-2 5.99e-2 9.99e- 2 5.49e-4
## 23 dem12_frac Asian Intercept 4.00e-1 2.88e-3 0. 1.97e-1
## 24 dem12_frac Asian Asian 1.73e+0 6.23e-2 5.04e-151 1.97e-1
## 25 dem12_frac Black Intercept 3.94e-1 3.20e-3 0. 1.55e-1
## 26 dem12_frac Black Black 4.46e-1 1.86e-2 1.77e-116 1.55e-1
## 27 dem12_frac density Intercept 9.15e-1 1.34e-2 0. 2.94e-1
## 28 dem12_frac density density 1.11e-1 3.08e-3 2.57e-237 2.94e-1
## 29 dem12_frac Hispanic Intercept 4.13e-1 3.34e-3 0. 5.43e-2
## 30 dem12_frac Hispanic Hispanic 2.59e-1 1.93e-2 7.14e- 40 5.43e-2
## 31 dem12_frac homogenei… Intercept 6.67e-1 8.86e-3 0. 1.87e-1
## 32 dem12_frac homogenei… homogenei… -3.47e-1 1.30e-2 2.10e-142 1.87e-1
## 33 dem12_frac IQ Intercept 4.40e-1 2.74e-3 0. 1.90e-2
## 34 dem12_frac IQ IQ -2.56e-2 3.31e-3 1.21e- 14 1.90e-2
## 35 dem12_frac median_age Intercept 7.38e-1 2.32e-2 1.01e-192 5.09e-2
## 36 dem12_frac median_age median_age -7.78e-3 6.01e-4 1.98e- 37 5.09e-2
## 37 dem12_frac Other Intercept 4.11e-1 3.91e-3 0. 3.34e-2
## 38 dem12_frac Other Other 1.58e+0 1.52e-1 5.79e- 25 3.34e-2
## 39 dem12_frac S Intercept 4.41e-1 2.83e-3 0. 2.86e-4
## 40 dem12_frac S S 4.22e-3 3.07e-3 1.70e- 1 2.86e-4
## 41 dem16_frac Amerindian Intercept 3.90e-1 3.15e-3 0. -1.87e-4
## 42 dem16_frac Amerindian Amerindian -4.43e-2 6.85e-2 5.17e- 1 -1.87e-4
## 43 dem16_frac Asian Intercept 3.37e-1 3.02e-3 0. 2.77e-1
## 44 dem16_frac Asian Asian 2.26e+0 6.54e-2 2.03e-221 2.77e-1
## 45 dem16_frac Black Intercept 3.32e-1 3.44e-3 0. 2.01e-1
## 46 dem16_frac Black Black 5.61e-1 2.00e-2 5.35e-154 2.01e-1
## 47 dem16_frac density Intercept 1.01e+0 1.35e-2 0. 4.11e-1
## 48 dem16_frac density density 1.45e-1 3.11e-3 0. 4.11e-1
## 49 dem16_frac Hispanic Intercept 3.49e-1 3.59e-3 0. 1.07e-1
## 50 dem16_frac Hispanic Hispanic 4.01e-1 2.08e-2 9.22e- 79 1.07e-1
## 51 dem16_frac homogenei… Intercept 7.26e-1 8.86e-3 0. 3.35e-1
## 52 dem16_frac homogenei… homogenei… -5.13e-1 1.30e-2 2.54e-278 3.35e-1
## 53 dem16_frac IQ Intercept 3.89e-1 3.05e-3 0. 1.09e-2
## 54 dem16_frac IQ IQ -2.18e-2 3.69e-3 4.10e- 9 1.09e-2
## 55 dem16_frac median_age Intercept 8.83e-1 2.48e-2 2.46e-233 1.14e-1
## 56 dem16_frac median_age median_age -1.29e-2 6.42e-4 3.86e- 84 1.14e-1
## 57 dem16_frac Other Intercept 3.56e-1 4.32e-3 0. 3.57e-2
## 58 dem16_frac Other Other 1.81e+0 1.68e-1 1.20e- 26 3.57e-2
## 59 dem16_frac S Intercept 3.92e-1 3.12e-3 0. 5.18e-3
## 60 dem16_frac S S 1.41e-2 3.40e-3 3.55e- 5 5.18e-3
## 61 green16_frac Amerindian Intercept 9.82e-3 1.23e-4 0. 2.44e-2
## 62 green16_frac Amerindian Amerindian 2.48e-2 3.05e-3 6.43e- 16 2.44e-2
## 63 green16_frac Asian Intercept 8.68e-3 1.30e-4 0. 1.41e-1
## 64 green16_frac Asian Asian 5.50e-2 2.66e-3 4.88e- 88 1.41e-1
## 65 green16_frac Black Intercept 1.12e-2 1.45e-4 0. 6.43e-2
## 66 green16_frac Black Black -1.21e-2 9.00e-4 1.12e- 39 6.43e-2
## 67 green16_frac density Intercept 1.58e-2 6.73e-4 9.67e-111 2.80e-2
## 68 green16_frac density density 1.35e-3 1.55e-4 5.12e- 18 2.80e-2
## 69 green16_frac Hispanic Intercept 9.46e-3 1.49e-4 0. 1.55e-2
## 70 green16_frac Hispanic Hispanic 5.27e-3 8.13e-4 1.05e- 10 1.55e-2
## 71 green16_frac homogenei… Intercept 1.23e-2 4.29e-4 3.82e-157 1.10e-2
## 72 green16_frac homogenei… homogenei… -3.39e-3 6.21e-4 5.10e- 8 1.10e-2
## 73 green16_frac IQ Intercept 9.89e-3 1.20e-4 0. 7.56e-3
## 74 green16_frac IQ IQ 6.53e-4 1.44e-4 6.37e- 6 7.56e-3
## 75 green16_frac median_age Intercept 1.55e-2 1.03e-3 6.86e- 49 1.03e-2
## 76 green16_frac median_age median_age -1.41e-4 2.66e-5 1.22e- 7 1.03e-2
## 77 green16_frac Other Intercept 7.33e-3 1.55e-4 0. 1.89e-1
## 78 green16_frac Other Other 1.51e-1 6.13e-3 1.34e-120 1.89e-1
## 79 green16_frac S Intercept 1.03e-2 1.15e-4 0. 1.19e-1
## 80 green16_frac S S 2.36e-3 1.26e-4 1.98e- 73 1.19e-1
## 81 libert16_fr… Amerindian Intercept 3.19e-2 2.59e-4 0. 3.08e-2
## 82 libert16_fr… Amerindian Amerindian 5.61e-2 5.62e-3 3.87e- 23 3.08e-2
## 83 libert16_fr… Asian Intercept 3.22e-2 2.96e-4 0. 3.94e-4
## 84 libert16_fr… Asian Asian 9.57e-3 6.42e-3 1.36e- 1 3.94e-4
## 85 libert16_fr… Black Intercept 3.76e-2 2.82e-4 0. 2.28e-1
## 86 libert16_fr… Black Black -4.98e-2 1.64e-3 5.08e-177 2.28e-1
## 87 libert16_fr… density Intercept 2.64e-2 1.47e-3 5.75e- 69 5.26e-3
## 88 libert16_fr… density density -1.41e-3 3.37e-4 3.05e- 5 5.26e-3
## 89 libert16_fr… Hispanic Intercept 3.19e-2 3.17e-4 0. 2.40e-3
## 90 libert16_fr… Hispanic Hispanic 5.34e-3 1.83e-3 3.59e- 3 2.40e-3
## 91 libert16_fr… homogenei… Intercept 2.39e-2 8.92e-4 1.41e-142 3.08e-2
## 92 libert16_fr… homogenei… homogenei… 1.30e-2 1.31e-3 3.66e- 23 3.08e-2
## 93 libert16_fr… IQ Intercept 3.21e-2 2.48e-4 0. 8.31e-2
## 94 libert16_fr… IQ IQ 5.00e-3 3.00e-4 7.15e- 60 8.31e-2
## 95 libert16_fr… median_age Intercept 4.64e-2 2.18e-3 8.64e- 94 1.29e-2
## 96 libert16_fr… median_age median_age -3.64e-4 5.66e-5 1.36e- 10 1.29e-2
## 97 libert16_fr… Other Intercept 2.96e-2 3.60e-4 0. 3.74e-2
## 98 libert16_fr… Other Other 1.55e-1 1.40e-2 8.05e- 28 3.74e-2
## 99 libert16_fr… S Intercept 3.37e-2 2.32e-4 0. 2.12e-1
## 100 libert16_fr… S S 7.29e-3 2.52e-4 5.99e-163 2.12e-1
## 101 rep08_frac Amerindian Intercept 5.21e-1 2.64e-3 0. 3.33e-4
## 102 rep08_frac Amerindian Amerindian -7.94e-2 5.56e-2 1.54e- 1 3.33e-4
## 103 rep08_frac Asian Intercept 5.57e-1 2.69e-3 0. 1.87e-1
## 104 rep08_frac Asian Asian -1.56e+0 5.82e-2 7.56e-142 1.87e-1
## 105 rep08_frac Black Intercept 5.54e-1 3.07e-3 0. 9.40e-2
## 106 rep08_frac Black Black -3.22e-1 1.79e-2 5.92e- 69 9.40e-2
## 107 rep08_frac density Intercept 1.09e-1 1.28e-2 2.50e- 17 2.56e-1
## 108 rep08_frac density density -9.59e-2 2.93e-3 1.94e-202 2.56e-1
## 109 rep08_frac Hispanic Intercept 5.41e-1 3.13e-3 0. 3.85e-2
## 110 rep08_frac Hispanic Hispanic -2.02e-1 1.81e-2 1.43e- 28 3.85e-2
## 111 rep08_frac homogenei… Intercept 3.53e-1 8.56e-3 2.07e-296 1.18e-1
## 112 rep08_frac homogenei… homogenei… 2.56e-1 1.25e-2 3.79e- 87 1.18e-1
## 113 rep08_frac IQ Intercept 5.21e-1 2.56e-3 0. 7.59e-3
## 114 rep08_frac IQ IQ 1.53e-2 3.10e-3 8.24e- 7 7.59e-3
## 115 rep08_frac median_age Intercept 2.85e-1 2.17e-2 1.64e- 38 3.66e-2
## 116 rep08_frac median_age median_age 6.13e-3 5.62e-4 2.81e- 27 3.66e-2
## 117 rep08_frac Other Intercept 5.47e-1 3.63e-3 0. 3.13e-2
## 118 rep08_frac Other Other -1.42e+0 1.41e-1 1.61e- 23 3.13e-2
## 119 rep08_frac S Intercept 5.18e-1 2.62e-3 0. 5.57e-3
## 120 rep08_frac S S -1.22e-2 2.84e-3 1.88e- 5 5.57e-3
## 121 rep12_frac Amerindian Intercept 5.43e-1 2.85e-3 0. 5.71e-4
## 122 rep12_frac Amerindian Amerindian -9.99e-2 6.00e-2 9.57e- 2 5.71e-4
## 123 rep12_frac Asian Intercept 5.83e-1 2.87e-3 0. 2.01e-1
## 124 rep12_frac Asian Asian -1.74e+0 6.22e-2 6.28e-154 2.01e-1
## 125 rep12_frac Black Intercept 5.86e-1 3.24e-3 0. 1.37e-1
## 126 rep12_frac Black Black -4.18e-1 1.88e-2 1.62e-101 1.37e-1
## 127 rep12_frac density Intercept 7.74e-2 1.35e-2 1.17e- 8 2.81e-1
## 128 rep12_frac density density -1.08e-1 3.10e-3 1.62e-225 2.81e-1
## 129 rep12_frac Hispanic Intercept 5.69e-1 3.35e-3 0. 5.46e-2
## 130 rep12_frac Hispanic Hispanic -2.60e-1 1.93e-2 4.72e- 40 5.46e-2
## 131 rep12_frac homogenei… Intercept 3.22e-1 8.93e-3 1.62e-238 1.75e-1
## 132 rep12_frac homogenei… homogenei… 3.36e-1 1.31e-2 2.61e-132 1.75e-1
## 133 rep12_frac IQ Intercept 5.43e-1 2.74e-3 0. 1.68e-2
## 134 rep12_frac IQ IQ 2.42e-2 3.32e-3 3.64e- 13 1.68e-2
## 135 rep12_frac median_age Intercept 2.47e-1 2.32e-2 5.31e- 26 4.98e-2
## 136 rep12_frac median_age median_age 7.70e-3 6.01e-4 1.28e- 36 4.98e-2
## 137 rep12_frac Other Intercept 5.72e-1 3.91e-3 0. 3.43e-2
## 138 rep12_frac Other Other -1.61e+0 1.52e-1 1.29e- 25 3.43e-2
## 139 rep12_frac S Intercept 5.41e-1 2.83e-3 0. 1.31e-3
## 140 rep12_frac S S -6.92e-3 3.07e-3 2.44e- 2 1.31e-3
## 141 rep16_frac Amerindian Intercept 5.62e-1 3.19e-3 0. -2.74e-4
## 142 rep16_frac Amerindian Amerindian -2.66e-2 6.93e-2 7.01e- 1 -2.74e-4
## 143 rep16_frac Asian Intercept 6.15e-1 3.04e-3 0. 2.83e-1
## 144 rep16_frac Asian Asian -2.31e+0 6.59e-2 2.08e-227 2.83e-1
## 145 rep16_frac Black Intercept 6.11e-1 3.61e-3 0. 1.43e-1
## 146 rep16_frac Black Black -4.79e-1 2.10e-2 1.22e-106 1.43e-1
## 147 rep16_frac density Intercept -4.90e-2 1.40e-2 4.65e- 4 3.87e-1
## 148 rep16_frac density density -1.42e-1 3.21e-3 0. 3.87e-1
## 149 rep16_frac Hispanic Intercept 6.04e-1 3.63e-3 0. 1.09e-1
## 150 rep16_frac Hispanic Hispanic -4.11e-1 2.10e-2 1.78e- 80 1.09e-1
## 151 rep16_frac homogenei… Intercept 2.39e-1 9.19e-3 9.64e-135 3.01e-1
## 152 rep16_frac homogenei… homogenei… 4.92e-1 1.34e-2 2.57e-244 3.01e-1
## 153 rep16_frac IQ Intercept 5.63e-1 3.10e-3 0. 4.35e-3
## 154 rep16_frac IQ IQ 1.42e-2 3.75e-3 1.54e- 4 4.35e-3
## 155 rep16_frac median_age Intercept 1.29e-2 2.48e-2 6.02e- 1 1.38e-1
## 156 rep16_frac median_age median_age 1.43e-2 6.41e-4 2.35e-102 1.38e-1
## 157 rep16_frac Other Intercept 6.00e-1 4.34e-3 0. 4.72e-2
## 158 rep16_frac Other Other -2.11e+0 1.69e-1 8.74e- 35 4.72e-2
## 159 rep16_frac S Intercept 5.57e-1 3.13e-3 0. 1.99e-2
## 160 rep16_frac S S -2.73e-2 3.41e-3 1.84e- 15 1.99e-2
#fit each model
regs = map(outcomes, function(outcome) {
#make model
this_model = str_glue("{outcome} ~ {str_c(preds, collapse = ' + ')}")
#fit OLS
ols(this_model %>% as.formula(), data = d, weights = d$popsqrt)
}) %>%
#add names
set_names(outcomes)
#full output
regs
## $dem16_frac
## Frequencies of Missing Values Due to Each Variable
## dem16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 3721.81 R2 0.704
## sigma1.3826 d.f. 10 R2 adj 0.703
## d.f. 3047 Pr(> chi2) 0.0000 g 0.127
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.31860 -0.06281 -0.01325 0.04365 0.46073
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.2100 0.0253 8.31 <0.0001
## IQ -0.0254 0.0036 -7.06 <0.0001
## S 0.0736 0.0034 21.49 <0.0001
## Black 0.9990 0.0251 39.86 <0.0001
## Hispanic 0.6166 0.0198 31.16 <0.0001
## Asian 1.1953 0.0669 17.87 <0.0001
## Amerindian 0.9596 0.0435 22.07 <0.0001
## Other 0.6885 0.1528 4.51 <0.0001
## homogeneity 0.3595 0.0192 18.71 <0.0001
## density 0.0916 0.0032 29.00 <0.0001
## median_age 0.0035 0.0004 7.93 <0.0001
##
##
## $dem12_frac
## Frequencies of Missing Values Due to Each Variable
## dem12_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2439.81 R2 0.550
## sigma1.5355 d.f. 10 R2 adj 0.548
## d.f. 3047 Pr(> chi2) 0.0000 g 0.104
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.284540 -0.072581 -0.009637 0.059038 0.428418
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.1154 0.0281 4.11 <0.0001
## IQ -0.0397 0.0040 -9.97 <0.0001
## S 0.0628 0.0038 16.49 <0.0001
## Black 0.9091 0.0278 32.66 <0.0001
## Hispanic 0.5394 0.0220 24.54 <0.0001
## Asian 1.1171 0.0743 15.04 <0.0001
## Amerindian 0.9757 0.0483 20.20 <0.0001
## Other 0.9264 0.1697 5.46 <0.0001
## homogeneity 0.4719 0.0213 22.11 <0.0001
## density 0.0863 0.0035 24.61 <0.0001
## median_age 0.0051 0.0005 10.39 <0.0001
##
##
## $dem08_frac
## Frequencies of Missing Values Due to Each Variable
## dem08_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2094.82 R2 0.496
## sigma1.5157 d.f. 10 R2 adj 0.494
## d.f. 3047 Pr(> chi2) 0.0000 g 0.093
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.286294 -0.071153 -0.006646 0.061337 0.453818
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.1682 0.0277 6.07 <0.0001
## IQ -0.0391 0.0039 -9.94 <0.0001
## S 0.0598 0.0038 15.92 <0.0001
## Black 0.7949 0.0275 28.93 <0.0001
## Hispanic 0.4800 0.0217 22.12 <0.0001
## Asian 1.0964 0.0733 14.95 <0.0001
## Amerindian 0.9091 0.0477 19.07 <0.0001
## Other 0.7330 0.1675 4.38 <0.0001
## homogeneity 0.4722 0.0211 22.41 <0.0001
## density 0.0824 0.0035 23.81 <0.0001
## median_age 0.0045 0.0005 9.32 <0.0001
##
##
## $rep16_frac
## Frequencies of Missing Values Due to Each Variable
## rep16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 3397.38 R2 0.671
## sigma1.4787 d.f. 10 R2 adj 0.670
## d.f. 3047 Pr(> chi2) 0.0000 g 0.127
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.46271 -0.05027 0.01247 0.06950 0.35105
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.6796 0.0270 25.14 <0.0001
## IQ 0.0336 0.0038 8.75 <0.0001
## S -0.0918 0.0037 -25.04 <0.0001
## Black -0.9626 0.0268 -35.91 <0.0001
## Hispanic -0.6116 0.0212 -28.90 <0.0001
## Asian -1.1074 0.0715 -15.48 <0.0001
## Amerindian -0.9936 0.0465 -21.37 <0.0001
## Other -0.9843 0.1634 -6.02 <0.0001
## homogeneity -0.3750 0.0206 -18.24 <0.0001
## density -0.0854 0.0034 -25.29 <0.0001
## median_age -0.0011 0.0005 -2.27 0.0235
##
##
## $rep12_frac
## Frequencies of Missing Values Due to Each Variable
## rep12_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2310.54 R2 0.530
## sigma1.5712 d.f. 10 R2 adj 0.529
## d.f. 3047 Pr(> chi2) 0.0000 g 0.102
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.431948 -0.060544 0.008352 0.074768 0.296771
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.8648 0.0287 30.11 <0.0001
## IQ 0.0428 0.0041 10.49 <0.0001
## S -0.0653 0.0039 -16.78 <0.0001
## Black -0.8838 0.0285 -31.03 <0.0001
## Hispanic -0.5321 0.0225 -23.66 <0.0001
## Asian -1.1648 0.0760 -15.32 <0.0001
## Amerindian -0.9644 0.0494 -19.52 <0.0001
## Other -0.8764 0.1736 -5.05 <0.0001
## homogeneity -0.4746 0.0218 -21.73 <0.0001
## density -0.0839 0.0036 -23.37 <0.0001
## median_age -0.0049 0.0005 -9.64 <0.0001
##
##
## $rep08_frac
## Frequencies of Missing Values Due to Each Variable
## rep08_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 1977.25 R2 0.476
## sigma1.5425 d.f. 10 R2 adj 0.474
## d.f. 3047 Pr(> chi2) 0.0000 g 0.091
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.450297 -0.063853 0.005955 0.070711 0.289223
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.8222 0.0282 29.16 <0.0001
## IQ 0.0420 0.0040 10.49 <0.0001
## S -0.0613 0.0038 -16.04 <0.0001
## Black -0.7729 0.0280 -27.64 <0.0001
## Hispanic -0.4670 0.0221 -21.15 <0.0001
## Asian -1.1483 0.0746 -15.39 <0.0001
## Amerindian -0.8951 0.0485 -18.45 <0.0001
## Other -0.6796 0.1705 -3.99 <0.0001
## homogeneity -0.4789 0.0214 -22.33 <0.0001
## density -0.0798 0.0035 -22.66 <0.0001
## median_age -0.0044 0.0005 -8.84 <0.0001
##
##
## $green16_frac
## Frequencies of Missing Values Due to Each Variable
## green16_frac IQ S Black Hispanic
## 546 60 20 4 4
## Asian Amerindian Other homogeneity density
## 4 4 4 4 7
## median_age (weights)
## 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 2552 LR chi2 1071.52 R2 0.343
## sigma0.0750 d.f. 10 R2 adj 0.340
## d.f. 2541 Pr(> chi2) 0.0000 g 0.004
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.022812 -0.003329 -0.001127 0.001464 0.078546
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0098 0.0015 6.70 <0.0001
## IQ -0.0028 0.0002 -13.07 <0.0001
## S 0.0034 0.0002 16.52 <0.0001
## Black -0.0043 0.0015 -2.91 0.0036
## Hispanic 0.0043 0.0011 3.88 0.0001
## Asian 0.0086 0.0039 2.21 0.0275
## Amerindian 0.0269 0.0027 9.83 <0.0001
## Other 0.1187 0.0099 12.03 <0.0001
## homogeneity 0.0050 0.0011 4.54 <0.0001
## density 0.0011 0.0002 6.22 <0.0001
## median_age 0.0000 0.0000 -0.18 0.8559
##
##
## $libert16_frac
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ S Black Hispanic
## 35 60 20 4 4
## Asian Amerindian Other homogeneity density
## 4 4 4 4 7
## median_age (weights)
## 4 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 1703.17 R2 0.427
## sigma0.1623 d.f. 10 R2 adj 0.425
## d.f. 3047 Pr(> chi2) 0.0000 g 0.011
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.057930 -0.007215 -0.001671 0.004903 0.100029
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0521 0.0030 17.56 <0.0001
## IQ -0.0022 0.0004 -5.13 <0.0001
## S 0.0084 0.0004 21.01 <0.0001
## Black -0.0222 0.0029 -7.55 <0.0001
## Hispanic 0.0072 0.0023 3.10 0.0020
## Asian -0.0915 0.0079 -11.65 <0.0001
## Amerindian 0.0424 0.0051 8.31 <0.0001
## Other 0.2428 0.0179 13.54 <0.0001
## homogeneity 0.0045 0.0023 1.99 0.0463
## density -0.0011 0.0004 -3.07 0.0022
## median_age -0.0007 0.0001 -13.41 <0.0001
##
#table of betas
regs %>%
{suppressWarnings(map_df(., function(x) {
x %>%
summary.lm() %>%
tidy() %>%
mutate(
star = if_else(abs(statistic) > 2.3, true = "*", false = ""),
beta = str_glue("{format_digits(estimate, 3)} ({format_digits(std.error, 3)}){star}")
) %>%
filter(term != "Intercept") %>%
select(beta) %>%
df_t() %>%
mutate(r2adj = x %>% summary.lm() %>% .$adj.r.squared) %>%
set_colnames(c(preds, "r2adj"))
}))} %>%
write_clipboard()
## IQ S Black Hispanic
## 1 -0.025 (0.004)* 0.074 (0.003)* 0.999 (0.025)* 0.617 (0.020)*
## 2 -0.040 (0.004)* 0.063 (0.004)* 0.909 (0.028)* 0.539 (0.022)*
## 3 -0.039 (0.004)* 0.060 (0.004)* 0.795 (0.027)* 0.480 (0.022)*
## 4 0.034 (0.004)* -0.092 (0.004)* -0.963 (0.027)* -0.612 (0.021)*
## 5 0.043 (0.004)* -0.065 (0.004)* -0.884 (0.028)* -0.532 (0.022)*
## 6 0.042 (0.004)* -0.061 (0.004)* -0.773 (0.028)* -0.467 (0.022)*
## 7 -0.003 (0.000)* 0.003 (0.000)* -0.004 (0.001)* 0.004 (0.001)*
## 8 -0.002 (0.000)* 0.008 (0.000)* -0.022 (0.003)* 0.007 (0.002)*
## Asian Amerindian Other Homogeneity
## 1 1.195 (0.067)* 0.960 (0.043)* 0.688 (0.153)* 0.360 (0.019)*
## 2 1.117 (0.074)* 0.976 (0.048)* 0.926 (0.170)* 0.472 (0.021)*
## 3 1.096 (0.073)* 0.909 (0.048)* 0.733 (0.167)* 0.472 (0.021)*
## 4 -1.107 (0.072)* -0.994 (0.047)* -0.984 (0.163)* -0.375 (0.021)*
## 5 -1.165 (0.076)* -0.964 (0.049)* -0.876 (0.174)* -0.475 (0.022)*
## 6 -1.148 (0.075)* -0.895 (0.049)* -0.680 (0.170)* -0.479 (0.021)*
## 7 0.009 (0.004) 0.027 (0.003)* 0.119 (0.010)* 0.005 (0.001)*
## 8 -0.091 (0.008)* 0.042 (0.005)* 0.243 (0.018)* 0.004 (0.002)
## Density Median age R2adj
## 1 0.092 (0.003)* 0.004 (0.000)* 0.70
## 2 0.086 (0.004)* 0.005 (0.000)* 0.55
## 3 0.082 (0.003)* 0.005 (0.000)* 0.49
## 4 -0.085 (0.003)* -0.001 (0.000) 0.67
## 5 -0.084 (0.004)* -0.005 (0.001)* 0.53
## 6 -0.080 (0.004)* -0.004 (0.000)* 0.47
## 7 0.001 (0.000)* 0.000 (0.000) 0.34
## 8 -0.001 (0.000)* -0.001 (0.000)* 0.43
#single regressions
single_regs_nowt = expand_grid(outcome = outcomes,
pred = preds) %>%
as_tibble() %>%
plyr::ddply(c("outcome", "pred"), function(x) {
# browser()
fit = ols(as.formula(str_glue("{x$outcome} ~ {x$pred}")), data = d)
fit_tidy = fit %>% summary.lm() %>% tidy()
tibble(
term = fit_tidy$term,
beta = fit_tidy$estimate,
se = fit_tidy$std.error,
p = fit_tidy$p.value,
r2adj = fit %>% summary.lm() %>% .$adj.r.squared
)
}) %>% as_tibble()
single_regs_nowt %>% print(n = Inf)
## # A tibble: 160 x 7
## outcome pred term beta se p r2adj
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 dem08_frac Amerindi… Intercept 4.11e-1 0.00254 0. 1.49e-2
## 2 dem08_frac Amerindi… Amerindi… 2.71e-1 0.0391 4.93e- 12 1.49e-2
## 3 dem08_frac Asian Intercept 3.94e-1 0.00261 0. 1.02e-1
## 4 dem08_frac Asian Asian 1.98e+0 0.105 1.09e- 74 1.02e-1
## 5 dem08_frac Black Intercept 3.88e-1 0.00276 0. 1.05e-1
## 6 dem08_frac Black Black 3.12e-1 0.0163 2.35e- 77 1.05e-1
## 7 dem08_frac density Intercept 7.72e-1 0.0151 0. 1.56e-1
## 8 dem08_frac density density 7.45e-2 0.00311 1.21e-116 1.56e-1
## 9 dem08_frac Hispanic Intercept 4.10e-1 0.00291 0. 3.93e-3
## 10 dem08_frac Hispanic Hispanic 6.95e-2 0.0191 2.74e- 4 3.93e-3
## 11 dem08_frac homogene… Intercept 5.25e-1 0.00982 0. 4.06e-2
## 12 dem08_frac homogene… homogene… -1.52e-1 0.0132 4.13e- 30 4.06e-2
## 13 dem08_frac IQ Intercept 4.17e-1 0.00244 0. 2.35e-2
## 14 dem08_frac IQ IQ -2.54e-2 0.00294 8.84e- 18 2.35e-2
## 15 dem08_frac median_a… Intercept 6.16e-1 0.0202 2.88e-178 3.07e-2
## 16 dem08_frac median_a… median_a… -5.02e-3 0.000504 4.32e- 23 3.07e-2
## 17 dem08_frac Other Intercept 4.00e-1 0.00358 0. 1.09e-2
## 18 dem08_frac Other Other 9.86e-1 0.166 3.00e- 9 1.09e-2
## 19 dem08_frac S Intercept 4.14e-1 0.00265 0. 1.98e-3
## 20 dem08_frac S S -7.10e-3 0.00265 7.46e- 3 1.98e-3
## 21 dem12_frac Amerindi… Intercept 3.80e-1 0.00271 0. 1.55e-2
## 22 dem12_frac Amerindi… Amerindi… 2.94e-1 0.0416 1.98e- 12 1.55e-2
## 23 dem12_frac Asian Intercept 3.62e-1 0.00277 0. 1.09e-1
## 24 dem12_frac Asian Asian 2.18e+0 0.112 2.19e- 80 1.09e-1
## 25 dem12_frac Black Intercept 3.48e-1 0.00284 0. 1.65e-1
## 26 dem12_frac Black Black 4.17e-1 0.0168 2.04e-124 1.65e-1
## 27 dem12_frac density Intercept 7.83e-1 0.0159 0. 1.70e-1
## 28 dem12_frac density density 8.31e-2 0.00328 1.44e-128 1.70e-1
## 29 dem12_frac Hispanic Intercept 3.76e-1 0.00309 0. 9.00e-3
## 30 dem12_frac Hispanic Hispanic 1.10e-1 0.0203 6.81e- 8 9.00e-3
## 31 dem12_frac homogene… Intercept 5.54e-1 0.0102 0. 8.54e-2
## 32 dem12_frac homogene… homogene… -2.35e-1 0.0138 1.54e- 62 8.54e-2
## 33 dem12_frac IQ Intercept 3.86e-1 0.00258 0. 4.38e-2
## 34 dem12_frac IQ IQ -3.69e-2 0.00311 7.15e- 32 4.38e-2
## 35 dem12_frac median_a… Intercept 6.43e-1 0.0214 4.03e-174 4.50e-2
## 36 dem12_frac median_a… median_a… -6.48e-3 0.000533 3.35e- 33 4.50e-2
## 37 dem12_frac Other Intercept 3.66e-1 0.00381 0. 1.40e-2
## 38 dem12_frac Other Other 1.19e+0 0.176 2.13e- 11 1.40e-2
## 39 dem12_frac S Intercept 3.80e-1 0.00281 0. 9.18e-3
## 40 dem12_frac S S -1.54e-2 0.00282 5.37e- 8 9.18e-3
## 41 dem16_frac Amerindi… Intercept 3.14e-1 0.00282 0. 5.69e-3
## 42 dem16_frac Amerindi… Amerindi… 1.94e-1 0.0448 1.50e- 5 5.69e-3
## 43 dem16_frac Asian Intercept 2.86e-1 0.00276 0. 1.79e-1
## 44 dem16_frac Asian Asian 2.89e+0 0.111 1.91e-135 1.79e-1
## 45 dem16_frac Black Intercept 2.70e-1 0.00279 0. 2.49e-1
## 46 dem16_frac Black Black 5.30e-1 0.0165 8.52e-196 2.49e-1
## 47 dem16_frac density Intercept 8.04e-1 0.0158 0. 2.38e-1
## 48 dem16_frac density density 1.02e-1 0.00327 1.45e-185 2.38e-1
## 49 dem16_frac Hispanic Intercept 2.99e-1 0.00316 0. 3.65e-2
## 50 dem16_frac Hispanic Hispanic 2.26e-1 0.0207 3.37e- 27 3.65e-2
## 51 dem16_frac homogene… Intercept 5.91e-1 0.00985 0. 2.09e-1
## 52 dem16_frac homogene… homogene… -3.81e-1 0.0133 6.52e-161 2.09e-1
## 53 dem16_frac IQ Intercept 3.18e-1 0.00268 0. 4.30e-2
## 54 dem16_frac IQ IQ -3.80e-2 0.00323 2.87e- 31 4.30e-2
## 55 dem16_frac median_a… Intercept 7.15e-1 0.0216 3.12e-206 9.97e-2
## 56 dem16_frac median_a… median_a… -9.99e-3 0.000537 3.48e- 73 9.97e-2
## 57 dem16_frac Other Intercept 2.96e-1 0.00395 0. 1.70e-2
## 58 dem16_frac Other Other 1.35e+0 0.183 1.86e- 13 1.70e-2
## 59 dem16_frac S Intercept 3.12e-1 0.00292 0. 7.54e-3
## 60 dem16_frac S S -1.45e-2 0.00293 7.56e- 7 7.54e-3
## 61 green16_fr… Amerindi… Intercept 8.36e-3 0.000126 0. 7.04e-2
## 62 green16_fr… Amerindi… Amerindi… 3.43e-2 0.00244 2.23e- 43 7.04e-2
## 63 green16_fr… Asian Intercept 7.89e-3 0.000134 0. 8.16e-2
## 64 green16_fr… Asian Asian 7.72e-2 0.00507 2.82e- 50 8.16e-2
## 65 green16_fr… Black Intercept 9.79e-3 0.000141 0. 7.74e-2
## 66 green16_fr… Black Black -1.32e-2 0.000891 1.23e- 47 7.74e-2
## 67 green16_fr… density Intercept 1.22e-2 0.000827 1.82e- 47 6.48e-3
## 68 green16_fr… density density 7.21e-4 0.000170 2.34e- 5 6.48e-3
## 69 green16_fr… Hispanic Intercept 8.64e-3 0.000149 0. 3.36e-4
## 70 green16_fr… Hispanic Hispanic 1.24e-3 0.000909 1.71e- 1 3.36e-4
## 71 green16_fr… homogene… Intercept 8.17e-3 0.000526 4.47e- 52 1.14e-4
## 72 green16_fr… homogene… homogene… 7.94e-4 0.000698 2.55e- 1 1.14e-4
## 73 green16_fr… IQ Intercept 8.68e-3 0.000124 0. 2.04e-2
## 74 green16_fr… IQ IQ 1.10e-3 0.000150 2.49e- 13 2.04e-2
## 75 green16_fr… median_a… Intercept 1.08e-2 0.00105 1.80e- 24 1.14e-3
## 76 green16_fr… median_a… median_a… -5.18e-5 0.0000260 4.64e- 2 1.14e-3
## 77 green16_fr… Other Intercept 5.95e-3 0.000172 8.39e-215 1.57e-1
## 78 green16_fr… Other Other 1.89e-1 0.00858 6.38e- 99 1.57e-1
## 79 green16_fr… S Intercept 9.40e-3 0.000126 0. 1.07e-1
## 80 green16_fr… S S 2.27e-3 0.000129 6.16e- 66 1.07e-1
## 81 libert16_f… Amerindi… Intercept 3.11e-2 0.000278 0. 2.06e-2
## 82 libert16_f… Amerindi… Amerindi… 3.59e-2 0.00441 5.30e- 16 2.06e-2
## 83 libert16_f… Asian Intercept 3.10e-2 0.000300 0. 8.40e-3
## 84 libert16_f… Asian Asian 6.32e-2 0.0121 1.83e- 7 8.40e-3
## 85 libert16_f… Black Intercept 3.62e-2 0.000277 0. 2.47e-1
## 86 libert16_f… Black Black -5.23e-2 0.00164 1.06e-193 2.47e-1
## 87 libert16_f… density Intercept 2.39e-2 0.00179 1.83e- 39 5.79e-3
## 88 libert16_f… density density -1.62e-3 0.000370 1.28e- 5 5.79e-3
## 89 libert16_f… Hispanic Intercept 3.08e-2 0.000318 0. 6.90e-3
## 90 libert16_f… Hispanic Hispanic 9.92e-3 0.00209 2.06e- 6 6.90e-3
## 91 libert16_f… homogene… Intercept 1.90e-2 0.00107 4.78e- 67 4.50e-2
## 92 libert16_f… homogene… homogene… 1.75e-2 0.00144 3.11e- 33 4.50e-2
## 93 libert16_f… IQ Intercept 3.14e-2 0.000257 0. 1.23e-1
## 94 libert16_f… IQ IQ 6.40e-3 0.000310 4.12e- 89 1.23e-1
## 95 libert16_f… median_a… Intercept 3.19e-2 0.00226 3.70e- 44 -3.15e-4
## 96 libert16_f… median_a… median_a… -7.96e-6 0.0000561 8.87e- 1 -3.15e-4
## 97 libert16_f… Other Intercept 2.84e-2 0.000386 0. 4.13e-2
## 98 libert16_f… Other Other 2.07e-1 0.0179 1.43e- 30 4.13e-2
## 99 libert16_f… S Intercept 3.45e-2 0.000246 0. 2.75e-1
## 100 libert16_f… S S 8.48e-3 0.000247 1.06e-218 2.75e-1
## 101 rep08_frac Amerindi… Intercept 5.72e-1 0.00254 0. 1.51e-2
## 102 rep08_frac Amerindi… Amerindi… -2.72e-1 0.0390 3.81e- 12 1.51e-2
## 103 rep08_frac Asian Intercept 5.89e-1 0.00261 0. 9.98e-2
## 104 rep08_frac Asian Asian -1.95e+0 0.105 2.92e- 73 9.98e-2
## 105 rep08_frac Black Intercept 5.93e-1 0.00278 0. 8.88e-2
## 106 rep08_frac Black Black -2.86e-1 0.0164 4.46e- 65 8.88e-2
## 107 rep08_frac density Intercept 2.30e-1 0.0152 5.64e- 50 1.41e-1
## 108 rep08_frac density density -7.07e-2 0.00313 1.02e-104 1.41e-1
## 109 rep08_frac Hispanic Intercept 5.72e-1 0.00291 0. 2.49e-3
## 110 rep08_frac Hispanic Hispanic -5.65e-2 0.0191 3.08e- 3 2.49e-3
## 111 rep08_frac homogene… Intercept 4.74e-1 0.00986 0. 2.98e-2
## 112 rep08_frac homogene… homogene… 1.30e-1 0.0133 1.72e- 22 2.98e-2
## 113 rep08_frac IQ Intercept 5.67e-1 0.00245 0. 1.94e-2
## 114 rep08_frac IQ IQ 2.31e-2 0.00295 5.77e- 15 1.94e-2
## 115 rep08_frac median_a… Intercept 3.86e-1 0.0203 1.93e- 76 2.54e-2
## 116 rep08_frac median_a… median_a… 4.57e-3 0.000504 2.09e- 19 2.54e-2
## 117 rep08_frac Other Intercept 5.83e-1 0.00358 0. 1.04e-2
## 118 rep08_frac Other Other -9.59e-1 0.165 7.53e- 9 1.04e-2
## 119 rep08_frac S Intercept 5.69e-1 0.00265 0. 6.51e-4
## 120 rep08_frac S S 4.61e-3 0.00265 8.23e- 2 6.51e-4
## 121 rep12_frac Amerindi… Intercept 6.01e-1 0.00271 0. 1.52e-2
## 122 rep12_frac Amerindi… Amerindi… -2.92e-1 0.0416 3.06e- 12 1.52e-2
## 123 rep12_frac Asian Intercept 6.20e-1 0.00277 0. 1.11e-1
## 124 rep12_frac Asian Asian -2.20e+0 0.112 9.31e- 82 1.11e-1
## 125 rep12_frac Black Intercept 6.31e-1 0.00288 0. 1.43e-1
## 126 rep12_frac Black Black -3.88e-1 0.0170 7.53e-107 1.43e-1
## 127 rep12_frac density Intercept 2.12e-1 0.0160 4.60e- 39 1.59e-1
## 128 rep12_frac density density -8.02e-2 0.00331 2.55e-119 1.59e-1
## 129 rep12_frac Hispanic Intercept 6.05e-1 0.00309 0. 8.59e-3
## 130 rep12_frac Hispanic Hispanic -1.07e-1 0.0203 1.32e- 7 8.59e-3
## 131 rep12_frac homogene… Intercept 4.40e-1 0.0103 1.04e-314 7.33e-2
## 132 rep12_frac homogene… homogene… 2.18e-1 0.0139 1.35e- 53 7.33e-2
## 133 rep12_frac IQ Intercept 5.95e-1 0.00259 0. 3.74e-2
## 134 rep12_frac IQ IQ 3.41e-2 0.00312 2.25e- 27 3.74e-2
## 135 rep12_frac median_a… Intercept 3.51e-1 0.0215 1.41e- 57 4.07e-2
## 136 rep12_frac median_a… median_a… 6.16e-3 0.000534 3.48e- 30 4.07e-2
## 137 rep12_frac Other Intercept 6.15e-1 0.00381 0. 1.40e-2
## 138 rep12_frac Other Other -1.19e+0 0.176 2.17e- 11 1.40e-2
## 139 rep12_frac S Intercept 6.00e-1 0.00282 0. 5.47e-3
## 140 rep12_frac S S 1.20e-2 0.00282 2.20e- 5 5.47e-3
## 141 rep16_frac Amerindi… Intercept 6.40e-1 0.00287 0. 9.23e-3
## 142 rep16_frac Amerindi… Amerindi… -2.50e-1 0.0456 4.76e- 8 9.23e-3
## 143 rep16_frac Asian Intercept 6.68e-1 0.00279 0. 1.89e-1
## 144 rep16_frac Asian Asian -3.03e+0 0.112 4.35e-144 1.89e-1
## 145 rep16_frac Black Intercept 6.76e-1 0.00299 0. 1.72e-1
## 146 rep16_frac Black Black -4.48e-1 0.0177 1.59e-129 1.72e-1
## 147 rep16_frac density Intercept 1.66e-1 0.0164 8.39e- 24 2.12e-1
## 148 rep16_frac density density -9.81e-2 0.00339 1.66e-163 2.12e-1
## 149 rep16_frac Hispanic Intercept 6.55e-1 0.00322 0. 3.88e-2
## 150 rep16_frac Hispanic Hispanic -2.37e-1 0.0211 8.42e- 29 3.88e-2
## 151 rep16_frac homogene… Intercept 3.83e-1 0.0103 9.30e-252 1.72e-1
## 152 rep16_frac homogene… homogene… 3.52e-1 0.0138 3.55e-130 1.72e-1
## 153 rep16_frac IQ Intercept 6.35e-1 0.00276 0. 2.27e-2
## 154 rep16_frac IQ IQ 2.82e-2 0.00333 3.43e- 17 2.27e-2
## 155 rep16_frac median_a… Intercept 2.08e-1 0.0219 4.29e- 21 1.11e-1
## 156 rep16_frac median_a… median_a… 1.07e-2 0.000544 1.03e- 81 1.11e-1
## 157 rep16_frac Other Intercept 6.62e-1 0.00401 0. 2.49e-2
## 158 rep16_frac Other Other -1.66e+0 0.185 5.15e- 19 2.49e-2
## 159 rep16_frac S Intercept 6.36e-1 0.00299 0. -3.20e-4
## 160 rep16_frac S S 2.64e-4 0.00300 9.30e- 1 -3.20e-4
#fit each model
regs_nowt = map(outcomes, function(outcome) {
#make model
this_model = str_glue("{outcome} ~ {str_c(preds, collapse = ' + ')}")
#fit OLS
ols(this_model %>% as.formula(), data = d)
}) %>%
#add names
set_names(outcomes)
#full output
regs_nowt
## $dem16_frac
## Frequencies of Missing Values Due to Each Variable
## dem16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 3372.09 R2 0.668
## sigma0.0873 d.f. 10 R2 adj 0.667
## d.f. 3047 Pr(> chi2) 0.0000 g 0.127
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.603068 -0.057566 -0.009821 0.043576 0.457820
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0399 0.0238 1.68 0.0940
## IQ -0.0128 0.0032 -3.97 <0.0001
## S 0.0614 0.0029 20.91 <0.0001
## Black 1.1130 0.0233 47.74 <0.0001
## Hispanic 0.7155 0.0201 35.68 <0.0001
## Asian 1.8007 0.1022 17.62 <0.0001
## Amerindian 1.0238 0.0332 30.88 <0.0001
## Other 1.1463 0.1647 6.96 <0.0001
## homogeneity 0.4621 0.0184 25.10 <0.0001
## density 0.0817 0.0030 27.63 <0.0001
## median_age 0.0037 0.0004 9.04 <0.0001
##
##
## $dem12_frac
## Frequencies of Missing Values Due to Each Variable
## dem12_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2238.68 R2 0.519
## sigma0.1011 d.f. 10 R2 adj 0.518
## d.f. 3047 Pr(> chi2) 0.0000 g 0.105
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.494996 -0.068600 -0.006851 0.061470 0.423143
##
##
## Coef S.E. t Pr(>|t|)
## Intercept -0.0108 0.0276 -0.39 0.6962
## IQ -0.0270 0.0037 -7.24 <0.0001
## S 0.0549 0.0034 16.13 <0.0001
## Black 1.0235 0.0270 37.90 <0.0001
## Hispanic 0.6516 0.0232 28.04 <0.0001
## Asian 1.5566 0.1184 13.15 <0.0001
## Amerindian 1.0677 0.0384 27.80 <0.0001
## Other 1.3326 0.1908 6.99 <0.0001
## homogeneity 0.5729 0.0213 26.86 <0.0001
## density 0.0815 0.0034 23.81 <0.0001
## median_age 0.0050 0.0005 10.35 <0.0001
##
##
## $dem08_frac
## Frequencies of Missing Values Due to Each Variable
## dem08_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 1883.80 R2 0.460
## sigma0.1005 d.f. 10 R2 adj 0.458
## d.f. 3047 Pr(> chi2) 0.0000 g 0.093
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.44680 -0.06862 -0.00490 0.06350 0.44818
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0276 0.0274 1.00 0.3152
## IQ -0.0256 0.0037 -6.92 <0.0001
## S 0.0501 0.0034 14.83 <0.0001
## Black 0.9000 0.0268 33.53 <0.0001
## Hispanic 0.5912 0.0231 25.60 <0.0001
## Asian 1.5849 0.1177 13.47 <0.0001
## Amerindian 1.0188 0.0382 26.69 <0.0001
## Other 1.0174 0.1896 5.37 <0.0001
## homogeneity 0.5775 0.0212 27.24 <0.0001
## density 0.0772 0.0034 22.69 <0.0001
## median_age 0.0047 0.0005 9.78 <0.0001
##
##
## $rep16_frac
## Frequencies of Missing Values Due to Each Variable
## rep16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2942.19 R2 0.618
## sigma0.0955 d.f. 10 R2 adj 0.617
## d.f. 3047 Pr(> chi2) 0.0000 g 0.125
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.45694 -0.05133 0.00848 0.06381 0.65534
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.8914 0.0261 34.19 <0.0001
## IQ 0.0170 0.0035 4.84 <0.0001
## S -0.0778 0.0032 -24.23 <0.0001
## Black -1.0957 0.0255 -42.97 <0.0001
## Hispanic -0.7234 0.0219 -32.98 <0.0001
## Asian -1.7903 0.1118 -16.02 <0.0001
## Amerindian -1.0630 0.0363 -29.32 <0.0001
## Other -1.4358 0.1801 -7.97 <0.0001
## homogeneity -0.4842 0.0201 -24.05 <0.0001
## density -0.0735 0.0032 -22.72 <0.0001
## median_age -0.0019 0.0005 -4.12 <0.0001
##
##
## $rep12_frac
## Frequencies of Missing Values Due to Each Variable
## rep12_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 2089.57 R2 0.495
## sigma0.1037 d.f. 10 R2 adj 0.493
## d.f. 3047 Pr(> chi2) 0.0000 g 0.103
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.425729 -0.063484 0.005646 0.070101 0.522200
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 1.0019 0.0283 35.39 <0.0001
## IQ 0.0284 0.0038 7.44 <0.0001
## S -0.0565 0.0035 -16.19 <0.0001
## Black -1.0011 0.0277 -36.15 <0.0001
## Hispanic -0.6441 0.0238 -27.04 <0.0001
## Asian -1.6423 0.1214 -13.53 <0.0001
## Amerindian -1.0600 0.0394 -26.92 <0.0001
## Other -1.2822 0.1956 -6.56 <0.0001
## homogeneity -0.5781 0.0219 -26.43 <0.0001
## density -0.0787 0.0035 -22.40 <0.0001
## median_age -0.0048 0.0005 -9.85 <0.0001
##
##
## $rep08_frac
## Frequencies of Missing Values Due to Each Variable
## rep08_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age
## 4 4 4 7 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 1756.88 R2 0.437
## sigma0.1025 d.f. 10 R2 adj 0.435
## d.f. 3047 Pr(> chi2) 0.0000 g 0.091
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.443098 -0.065920 0.003441 0.069500 0.464983
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.9711 0.0280 34.69 <0.0001
## IQ 0.0272 0.0038 7.19 <0.0001
## S -0.0507 0.0034 -14.72 <0.0001
## Black -0.8786 0.0274 -32.09 <0.0001
## Hispanic -0.5739 0.0236 -24.36 <0.0001
## Asian -1.6727 0.1200 -13.94 <0.0001
## Amerindian -1.0105 0.0389 -25.95 <0.0001
## Other -0.9523 0.1934 -4.92 <0.0001
## homogeneity -0.5854 0.0216 -27.07 <0.0001
## density -0.0734 0.0035 -21.14 <0.0001
## median_age -0.0045 0.0005 -9.31 <0.0001
##
##
## $green16_frac
## Frequencies of Missing Values Due to Each Variable
## green16_frac IQ S Black Hispanic
## 546 60 20 4 4
## Asian Amerindian Other homogeneity density
## 4 4 4 4 7
## median_age
## 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 2552 LR chi2 1011.98 R2 0.327
## sigma0.0052 d.f. 10 R2 adj 0.325
## d.f. 2541 Pr(> chi2) 0.0000 g 0.004
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.0431558 -0.0029389 -0.0008577 0.0016070 0.0755493
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0020 0.0015 1.27 0.2045
## IQ -0.0014 0.0002 -6.58 <0.0001
## S 0.0026 0.0002 13.97 <0.0001
## Black 0.0005 0.0015 0.35 0.7293
## Hispanic 0.0073 0.0012 5.88 <0.0001
## Asian 0.0122 0.0066 1.84 0.0657
## Amerindian 0.0347 0.0024 14.61 <0.0001
## Other 0.2078 0.0138 15.08 <0.0001
## homogeneity 0.0078 0.0012 6.66 <0.0001
## density 0.0008 0.0002 3.97 <0.0001
## median_age 0.0000 0.0000 1.19 0.2345
##
##
## $libert16_frac
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ S Black Hispanic
## 35 60 20 4 4
## Asian Amerindian Other homogeneity density
## 4 4 4 4 7
## median_age
## 4
##
## Linear Regression Model
##
## ols(formula = this_model %>% as.formula(), data = d)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 1702.18 R2 0.427
## sigma0.0115 d.f. 10 R2 adj 0.425
## d.f. 3047 Pr(> chi2) 0.0000 g 0.011
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.047952 -0.006833 -0.001459 0.005089 0.092866
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0260 0.0031 8.30 <0.0001
## IQ -0.0009 0.0004 -2.15 0.0320
## S 0.0087 0.0004 22.57 <0.0001
## Black -0.0073 0.0031 -2.37 0.0180
## Hispanic 0.0226 0.0026 8.56 <0.0001
## Asian -0.0573 0.0134 -4.27 <0.0001
## Amerindian 0.0404 0.0044 9.26 <0.0001
## Other 0.2819 0.0216 13.02 <0.0001
## homogeneity 0.0136 0.0024 5.63 <0.0001
## density -0.0012 0.0004 -3.02 0.0026
## median_age -0.0003 0.0001 -5.64 <0.0001
##
#table of betas
regs_nowt %>%
{suppressWarnings(map_df(., function(x) {
x %>%
summary.lm() %>%
tidy() %>%
mutate(
star = if_else(abs(statistic) > 2.3, true = "*", false = ""),
beta = str_glue("{format_digits(estimate, 3)} ({format_digits(std.error, 3)}){star}")
) %>%
filter(term != "Intercept") %>%
select(beta) %>%
df_t() %>%
mutate(r2adj = x %>% summary.lm() %>% .$adj.r.squared) %>%
set_colnames(c(preds, "r2adj"))
}))} %>%
write_clipboard()
## IQ S Black Hispanic
## 1 -0.013 (0.003)* 0.061 (0.003)* 1.113 (0.023)* 0.716 (0.020)*
## 2 -0.027 (0.004)* 0.055 (0.003)* 1.024 (0.027)* 0.652 (0.023)*
## 3 -0.026 (0.004)* 0.050 (0.003)* 0.900 (0.027)* 0.591 (0.023)*
## 4 0.017 (0.004)* -0.078 (0.003)* -1.096 (0.025)* -0.723 (0.022)*
## 5 0.028 (0.004)* -0.056 (0.003)* -1.001 (0.028)* -0.644 (0.024)*
## 6 0.027 (0.004)* -0.051 (0.003)* -0.879 (0.027)* -0.574 (0.024)*
## 7 -0.001 (0.000)* 0.003 (0.000)* 0.001 (0.002) 0.007 (0.001)*
## 8 -0.001 (0.000) 0.009 (0.000)* -0.007 (0.003)* 0.023 (0.003)*
## Asian Amerindian Other Homogeneity
## 1 1.801 (0.102)* 1.024 (0.033)* 1.146 (0.165)* 0.462 (0.018)*
## 2 1.557 (0.118)* 1.068 (0.038)* 1.333 (0.191)* 0.573 (0.021)*
## 3 1.585 (0.118)* 1.019 (0.038)* 1.017 (0.190)* 0.577 (0.021)*
## 4 -1.790 (0.112)* -1.063 (0.036)* -1.436 (0.180)* -0.484 (0.020)*
## 5 -1.642 (0.121)* -1.060 (0.039)* -1.282 (0.196)* -0.578 (0.022)*
## 6 -1.673 (0.120)* -1.010 (0.039)* -0.952 (0.193)* -0.585 (0.022)*
## 7 0.012 (0.007) 0.035 (0.002)* 0.208 (0.014)* 0.008 (0.001)*
## 8 -0.057 (0.013)* 0.040 (0.004)* 0.282 (0.022)* 0.014 (0.002)*
## Density Median age R2adj
## 1 0.082 (0.003)* 0.004 (0.000)* 0.67
## 2 0.082 (0.003)* 0.005 (0.000)* 0.52
## 3 0.077 (0.003)* 0.005 (0.000)* 0.46
## 4 -0.073 (0.003)* -0.002 (0.000)* 0.62
## 5 -0.079 (0.004)* -0.005 (0.000)* 0.49
## 6 -0.073 (0.003)* -0.005 (0.000)* 0.44
## 7 0.001 (0.000)* 0.000 (0.000) 0.32
## 8 -0.001 (0.000)* 0.000 (0.000)* 0.42
Which covariates cause the change in beta of IQ?
#libertarian models
ols(libert16_frac ~ IQ, data = d, weights = d$popsqrt)
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ (weights)
## 35 60 4
##
## Linear Regression Model
##
## ols(formula = libert16_frac ~ IQ, data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3060 LR chi2 266.55 R2 0.083
## sigma0.2049 d.f. 1 R2 adj 0.083
## d.f. 3058 Pr(> chi2) 0.0000 g 0.005
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.031809 -0.011159 -0.002825 0.007651 0.104017
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0321 0.0002 129.62 <0.0001
## IQ 0.0050 0.0003 16.68 <0.0001
##
ols(libert16_frac ~ IQ + S, data = d, weights = d$popsqrt)
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ S (weights)
## 35 60 20 4
##
## Linear Regression Model
##
## ols(formula = libert16_frac ~ IQ + S, data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 775.16 R2 0.224
## sigma0.1887 d.f. 2 R2 adj 0.223
## d.f. 3055 Pr(> chi2) 0.0000 g 0.008
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.033136 -0.008075 -0.001865 0.006350 0.107837
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0345 0.0003 138.02 <0.0001
## IQ -0.0029 0.0004 -6.74 <0.0001
## S 0.0093 0.0004 23.51 <0.0001
##
ols(libert16_frac ~ IQ + density, data = d, weights = d$popsqrt)
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ density (weights)
## 35 60 7 4
##
## Linear Regression Model
##
## ols(formula = libert16_frac ~ IQ + density, data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3060 LR chi2 297.68 R2 0.093
## sigma0.2039 d.f. 2 R2 adj 0.092
## d.f. 3057 Pr(> chi2) 0.0000 g 0.005
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.036561 -0.011940 -0.003674 0.006873 0.100717
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0239 0.0015 16.17 <0.0001
## IQ 0.0053 0.0003 17.49 <0.0001
## density -0.0019 0.0003 -5.59 <0.0001
##
ols(libert16_frac ~ IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity, data = d, weights = d$popsqrt)
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ Black Hispanic Asian
## 35 60 4 4 4
## Amerindian Other homogeneity (weights)
## 4 4 4 4
##
## Linear Regression Model
##
## ols(formula = libert16_frac ~ IQ + Black + Hispanic + Asian +
## Amerindian + Other + homogeneity, data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3060 LR chi2 1105.99 R2 0.303
## sigma0.1789 d.f. 7 R2 adj 0.302
## d.f. 3052 Pr(> chi2) 0.0000 g 0.008
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.057314 -0.009433 -0.002301 0.005649 0.097757
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0353 0.0022 15.79 <0.0001
## IQ 0.0035 0.0003 10.10 <0.0001
## Black -0.0391 0.0030 -13.13 <0.0001
## Hispanic 0.0084 0.0025 3.40 0.0007
## Asian -0.0534 0.0081 -6.60 <0.0001
## Amerindian 0.0375 0.0055 6.87 <0.0001
## Other 0.2437 0.0197 12.37 <0.0001
## homogeneity -0.0052 0.0024 -2.15 0.0315
##
ols(libert16_frac ~ IQ + median_age, data = d, weights = d$popsqrt)
## Frequencies of Missing Values Due to Each Variable
## libert16_frac IQ median_age (weights)
## 35 60 4 4
##
## Linear Regression Model
##
## ols(formula = libert16_frac ~ IQ + median_age, data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3060 LR chi2 372.22 R2 0.115
## sigma0.2015 d.f. 2 R2 adj 0.114
## d.f. 3057 Pr(> chi2) 0.0000 g 0.005
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.033359 -0.010007 -0.002060 0.008298 0.106056
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.0537 0.0021 25.57 <0.0001
## IQ 0.0055 0.0003 18.43 <0.0001
## median_age -0.0006 0.0001 -10.36 <0.0001
##
#nonlinearity
(rep16_linear = ols(rep16_frac ~ IQ + S + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density + median_age, data = d, weights = d$popsqrt))
## Frequencies of Missing Values Due to Each Variable
## rep16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = rep16_frac ~ IQ + S + Black + Hispanic + Asian +
## Amerindian + Other + homogeneity + density + median_age,
## data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 3397.38 R2 0.671
## sigma1.4787 d.f. 10 R2 adj 0.670
## d.f. 3047 Pr(> chi2) 0.0000 g 0.127
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.46271 -0.05027 0.01247 0.06950 0.35105
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.6796 0.0270 25.14 <0.0001
## IQ 0.0336 0.0038 8.75 <0.0001
## S -0.0918 0.0037 -25.04 <0.0001
## Black -0.9626 0.0268 -35.91 <0.0001
## Hispanic -0.6116 0.0212 -28.90 <0.0001
## Asian -1.1074 0.0715 -15.48 <0.0001
## Amerindian -0.9936 0.0465 -21.37 <0.0001
## Other -0.9843 0.1634 -6.02 <0.0001
## homogeneity -0.3750 0.0206 -18.24 <0.0001
## density -0.0854 0.0034 -25.29 <0.0001
## median_age -0.0011 0.0005 -2.27 0.0235
##
rep16_linear %>% ggpredict(terms = "IQ") %>% plot()
## Warning in colnames(datlist)[ncol(datlist)] <- w: number of items to
## replace is not a multiple of replacement length
(rep16_nonlinear = ols(rep16_frac ~ rcs(IQ) + S + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density + median_age, data = d, weights = d$popsqrt))
## Frequencies of Missing Values Due to Each Variable
## rep16_frac IQ S Black Hispanic Asian
## 35 60 20 4 4 4
## Amerindian Other homogeneity density median_age (weights)
## 4 4 4 7 4 4
##
## Linear Regression Model
##
## ols(formula = rep16_frac ~ rcs(IQ) + S + Black + Hispanic + Asian +
## Amerindian + Other + homogeneity + density + median_age,
## data = d, weights = d$popsqrt)
##
##
## Model Likelihood Discrimination
## Ratio Test Indexes
## Obs 3058 LR chi2 3422.00 R2 0.673
## sigma1.4735 d.f. 13 R2 adj 0.672
## d.f. 3044 Pr(> chi2) 0.0000 g 0.129
##
## Residuals
##
## Min 1Q Median 3Q Max
## -0.45911 -0.05065 0.01258 0.06909 0.34322
##
##
## Coef S.E. t Pr(>|t|)
## Intercept 0.6797 0.0285 23.86 <0.0001
## IQ 0.0738 0.0106 6.98 <0.0001
## IQ' -0.0762 0.0342 -2.23 0.0259
## IQ'' 0.1602 0.2638 0.61 0.5436
## IQ''' 0.1441 0.5165 0.28 0.7802
## S -0.0884 0.0037 -23.73 <0.0001
## Black -0.8958 0.0301 -29.73 <0.0001
## Hispanic -0.5862 0.0218 -26.87 <0.0001
## Asian -1.0368 0.0730 -14.20 <0.0001
## Amerindian -0.9123 0.0494 -18.46 <0.0001
## Other -1.0407 0.1634 -6.37 <0.0001
## homogeneity -0.3383 0.0218 -15.53 <0.0001
## density -0.0873 0.0034 -25.71 <0.0001
## median_age -0.0012 0.0005 -2.47 0.0137
##
rep16_nonlinear %>% ggpredict(terms = "IQ") %>% plot()
## Warning in colnames(datlist)[ncol(datlist)] <- w: number of items to
## replace is not a multiple of replacement length
#likelihood ratio test
lrtest(rep16_linear, rep16_nonlinear)
##
## Model 1: rep16_frac ~ IQ + S + Black + Hispanic + Asian + Amerindian +
## Other + homogeneity + density + median_age
## Model 2: rep16_frac ~ rcs(IQ) + S + Black + Hispanic + Asian + Amerindian +
## Other + homogeneity + density + median_age
##
## L.R. Chisq d.f. P
## 2.5e+01 3.0e+00 1.8e-05
We can also fit 3 path models so as to specify a more realistic causal structure. These weren’t very interesting, so we left them in supplement (we report them to avoid reporting bias).
fit_metrics = c("cfi", "rmsea")
#2016
# path_str = "IQ ~ Black + Hispanic + Asian + Amerindian + Other
# S ~ IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity
# dem16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
# rep16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
# green16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
# libert16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density"
path_str = "IQ ~ Black + Hispanic + Asian + Amerindian + Other
S ~ IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity
dem16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
rep16_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density"
sem16 = lavaan::sem(path_str, data = d, mimic = "EQS", missing = "pairwise")
## Warning in lav_data_full(data = data, group = group, cluster = cluster, :
## lavaan WARNING: some observed variances are (at least) a factor 1000 times
## larger than others; use varTable(fit) to investigate
## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
## 3145 3146 3147
sem16 %>% parameterestimates()
## lhs op rhs est se z pvalue ci.lower ci.upper
## 1 IQ ~ Black -3.421 0.076 -44.80 0.000 -3.570 -3.271
## 2 IQ ~ Hispanic -2.123 0.085 -24.86 0.000 -2.290 -1.955
## 3 IQ ~ Asian 7.164 0.503 14.23 0.000 6.177 8.150
## 4 IQ ~ Amerindian -3.618 0.153 -23.62 0.000 -3.919 -3.318
## 5 IQ ~ Other -4.205 0.663 -6.34 0.000 -5.504 -2.906
## 6 S ~ IQ 0.599 0.016 36.78 0.000 0.567 0.630
## 7 S ~ Black -2.615 0.128 -20.43 0.000 -2.866 -2.364
## 8 S ~ Hispanic -0.876 0.114 -7.68 0.000 -1.099 -0.652
## 9 S ~ Asian 6.201 0.498 12.45 0.000 5.225 7.177
## 10 S ~ Amerindian -1.269 0.160 -7.91 0.000 -1.584 -0.955
## 11 S ~ Other -1.938 0.640 -3.03 0.002 -3.192 -0.683
## 12 S ~ homogeneity -0.676 0.107 -6.33 0.000 -0.886 -0.467
## 13 dem16_frac ~ S 0.061 0.003 20.92 0.000 0.056 0.067
## 14 dem16_frac ~ IQ -0.009 0.003 -2.71 0.007 -0.015 -0.002
## 15 dem16_frac ~ Black 1.059 0.022 47.15 0.000 1.015 1.103
## 16 dem16_frac ~ Hispanic 0.649 0.019 33.72 0.000 0.611 0.687
## 17 dem16_frac ~ Asian 1.411 0.088 16.02 0.000 1.238 1.583
## 18 dem16_frac ~ Amerindian 0.802 0.028 29.16 0.000 0.748 0.856
## 19 dem16_frac ~ Other 0.839 0.107 7.87 0.000 0.630 1.048
## 20 dem16_frac ~ homogeneity 0.408 0.018 22.75 0.000 0.373 0.444
## 21 dem16_frac ~ density 0.073 0.002 29.37 0.000 0.068 0.078
## 22 rep16_frac ~ S -0.077 0.003 -24.19 0.000 -0.083 -0.071
## 23 rep16_frac ~ IQ 0.013 0.003 3.68 0.000 0.006 0.020
## 24 rep16_frac ~ Black -1.037 0.024 -42.59 0.000 -1.085 -0.989
## 25 rep16_frac ~ Hispanic -0.671 0.021 -32.18 0.000 -0.712 -0.631
## 26 rep16_frac ~ Asian -1.398 0.095 -14.64 0.000 -1.585 -1.211
## 27 rep16_frac ~ Amerindian -0.854 0.030 -28.65 0.000 -0.913 -0.796
## 28 rep16_frac ~ Other -0.946 0.116 -8.19 0.000 -1.173 -0.720
## 29 rep16_frac ~ homogeneity -0.417 0.019 -21.43 0.000 -0.455 -0.379
## 30 rep16_frac ~ density -0.072 0.003 -26.48 0.000 -0.077 -0.066
## 31 IQ ~~ IQ 0.368 0.009 39.64 0.000 0.350 0.386
## 32 S ~~ S 0.306 0.008 39.64 0.000 0.291 0.321
## 33 dem16_frac ~~ dem16_frac 0.008 0.000 39.64 0.000 0.008 0.009
## 34 rep16_frac ~~ rep16_frac 0.010 0.000 39.64 0.000 0.009 0.010
## 35 dem16_frac ~~ rep16_frac -0.009 0.000 -39.08 0.000 -0.009 -0.008
## 36 Black ~~ Black 0.021 0.001 39.64 0.000 0.020 0.022
## 37 Black ~~ Hispanic -0.002 0.000 -5.95 0.000 -0.003 -0.001
## 38 Black ~~ Asian 0.000 0.000 0.73 0.466 0.000 0.000
## 39 Black ~~ Amerindian -0.001 0.000 -5.60 0.000 -0.001 -0.001
## 40 Black ~~ Other 0.000 0.000 -4.86 0.000 0.000 0.000
## 41 Black ~~ homogeneity -0.015 0.001 -28.18 0.000 -0.017 -0.014
## 42 Black ~~ density 0.026 0.002 13.06 0.000 0.022 0.030
## 43 Hispanic ~~ Hispanic 0.017 0.000 39.64 0.000 0.016 0.018
## 44 Hispanic ~~ Asian 0.000 0.000 7.71 0.000 0.000 0.001
## 45 Hispanic ~~ Amerindian 0.000 0.000 -2.24 0.025 -0.001 0.000
## 46 Hispanic ~~ Other 0.000 0.000 -1.41 0.160 0.000 0.000
## 47 Hispanic ~~ homogeneity -0.011 0.000 -22.53 0.000 -0.011 -0.010
## 48 Hispanic ~~ density -0.004 0.002 -2.35 0.019 -0.008 -0.001
## 49 Asian ~~ Asian 0.001 0.000 39.64 0.000 0.001 0.001
## 50 Asian ~~ Amerindian 0.000 0.000 -0.64 0.522 0.000 0.000
## 51 Asian ~~ Other 0.000 0.000 21.88 0.000 0.000 0.000
## 52 Asian ~~ homogeneity -0.002 0.000 -18.30 0.000 -0.002 -0.001
## 53 Asian ~~ density 0.006 0.000 18.37 0.000 0.006 0.007
## 54 Amerindian ~~ Amerindian 0.005 0.000 39.64 0.000 0.005 0.006
## 55 Amerindian ~~ Other 0.000 0.000 14.23 0.000 0.000 0.000
## 56 Amerindian ~~ homogeneity -0.002 0.000 -8.70 0.000 -0.003 -0.002
## 57 Amerindian ~~ density -0.014 0.001 -13.55 0.000 -0.016 -0.012
## 58 Other ~~ Other 0.000 0.000 39.64 0.000 0.000 0.000
## 59 Other ~~ homogeneity -0.001 0.000 -13.67 0.000 -0.001 -0.001
## 60 Other ~~ density 0.000 0.000 0.56 0.573 0.000 0.001
## 61 homogeneity ~~ homogeneity 0.034 0.001 39.64 0.000 0.033 0.036
## 62 homogeneity ~~ density -0.032 0.003 -12.40 0.000 -0.037 -0.027
## 63 density ~~ density 0.570 0.014 39.64 0.000 0.542 0.598
lavaanPlot(model = sem16, coefs = T)
GG_save("figures/path2016.png")
#2012
path_str = "IQ ~ Black + Hispanic + Asian + Amerindian + Other
S ~ IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity
dem12_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
rep12_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density"
sem12 = sem(path_str, data = d, mimic = "EQS", missing = "pairwise")
## Warning in lav_data_full(data = data, group = group, cluster = cluster, :
## lavaan WARNING: some observed variances are (at least) a factor 1000 times
## larger than others; use varTable(fit) to investigate
## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
## 2383 3145 3146 3147
## Warning in lav_model_vcov(lavmodel = lavmodel2, lavsamplestats = lavsamplestats, : lavaan WARNING:
## The variance-covariance matrix of the estimated parameters (vcov)
## does not appear to be positive definite! The smallest eigenvalue
## (= 3.090750e-13) is close to zero. This may be a symptom that the
## model is not identified.
sem12 %>% parameterestimates()
## lhs op rhs est se z pvalue ci.lower ci.upper
## 1 IQ ~ Black -3.421 0.076 -44.79 0.000 -3.570 -3.271
## 2 IQ ~ Hispanic -2.123 0.085 -24.86 0.000 -2.290 -1.955
## 3 IQ ~ Asian 7.164 0.503 14.23 0.000 6.177 8.150
## 4 IQ ~ Amerindian -3.618 0.153 -23.62 0.000 -3.919 -3.318
## 5 IQ ~ Other -4.205 0.663 -6.34 0.000 -5.505 -2.906
## 6 S ~ IQ 0.599 0.016 36.78 0.000 0.567 0.630
## 7 S ~ Black -2.615 0.128 -20.43 0.000 -2.866 -2.364
## 8 S ~ Hispanic -0.876 0.114 -7.68 0.000 -1.099 -0.652
## 9 S ~ Asian 6.201 0.498 12.45 0.000 5.224 7.177
## 10 S ~ Amerindian -1.269 0.160 -7.91 0.000 -1.584 -0.955
## 11 S ~ Other -1.938 0.640 -3.03 0.002 -3.192 -0.683
## 12 S ~ homogeneity -0.676 0.107 -6.33 0.000 -0.886 -0.467
## 13 dem12_frac ~ S 0.052 0.003 15.28 0.000 0.045 0.058
## 14 dem12_frac ~ IQ -0.021 0.004 -5.81 0.000 -0.029 -0.014
## 15 dem12_frac ~ Black 0.957 0.026 37.00 0.000 0.906 1.007
## 16 dem12_frac ~ Hispanic 0.570 0.022 25.71 0.000 0.526 0.613
## 17 dem12_frac ~ Asian 1.296 0.101 12.78 0.000 1.097 1.495
## 18 dem12_frac ~ Amerindian 0.823 0.032 25.98 0.000 0.761 0.885
## 19 dem12_frac ~ Other 0.993 0.123 8.10 0.000 0.753 1.234
## 20 dem12_frac ~ homogeneity 0.525 0.021 25.39 0.000 0.484 0.565
## 21 dem12_frac ~ density 0.071 0.003 24.64 0.000 0.065 0.076
## 22 rep12_frac ~ S -0.053 0.003 -15.43 0.000 -0.060 -0.047
## 23 rep12_frac ~ IQ 0.023 0.004 6.06 0.000 0.015 0.030
## 24 rep12_frac ~ Black -0.935 0.026 -35.30 0.000 -0.986 -0.883
## 25 rep12_frac ~ Hispanic -0.564 0.023 -24.88 0.000 -0.609 -0.520
## 26 rep12_frac ~ Asian -1.354 0.104 -13.04 0.000 -1.557 -1.150
## 27 rep12_frac ~ Amerindian -0.815 0.032 -25.12 0.000 -0.878 -0.751
## 28 rep12_frac ~ Other -0.959 0.126 -7.64 0.000 -1.206 -0.713
## 29 rep12_frac ~ homogeneity -0.529 0.021 -25.00 0.000 -0.571 -0.488
## 30 rep12_frac ~ density -0.069 0.003 -23.28 0.000 -0.074 -0.063
## 31 IQ ~~ IQ 0.368 0.009 39.64 0.000 0.350 0.386
## 32 S ~~ S 0.306 0.008 39.64 0.000 0.291 0.321
## 33 dem12_frac ~~ dem12_frac 0.011 0.000 39.64 0.000 0.010 0.012
## 34 rep12_frac ~~ rep12_frac 0.012 0.000 39.64 0.000 0.011 0.012
## 35 dem12_frac ~~ rep12_frac -0.011 0.000 -39.59 0.000 -0.012 -0.011
## 36 Black ~~ Black 0.021 0.001 39.64 0.000 0.020 0.022
## 37 Black ~~ Hispanic -0.002 0.000 -5.95 0.000 -0.003 -0.001
## 38 Black ~~ Asian 0.000 0.000 0.73 0.466 0.000 0.000
## 39 Black ~~ Amerindian -0.001 0.000 -5.60 0.000 -0.001 -0.001
## 40 Black ~~ Other 0.000 0.000 -4.86 0.000 0.000 0.000
## 41 Black ~~ homogeneity -0.015 0.001 -28.18 0.000 -0.017 -0.014
## 42 Black ~~ density 0.026 0.002 13.06 0.000 0.022 0.030
## 43 Hispanic ~~ Hispanic 0.017 0.000 39.64 0.000 0.016 0.018
## 44 Hispanic ~~ Asian 0.000 0.000 7.71 0.000 0.000 0.001
## 45 Hispanic ~~ Amerindian 0.000 0.000 -2.23 0.025 -0.001 0.000
## 46 Hispanic ~~ Other 0.000 0.000 -1.41 0.160 0.000 0.000
## 47 Hispanic ~~ homogeneity -0.011 0.000 -22.53 0.000 -0.011 -0.010
## 48 Hispanic ~~ density -0.004 0.002 -2.35 0.019 -0.008 -0.001
## 49 Asian ~~ Asian 0.001 0.000 39.64 0.000 0.001 0.001
## 50 Asian ~~ Amerindian 0.000 0.000 -0.64 0.522 0.000 0.000
## 51 Asian ~~ Other 0.000 0.000 21.88 0.000 0.000 0.000
## 52 Asian ~~ homogeneity -0.002 0.000 -18.30 0.000 -0.002 -0.001
## 53 Asian ~~ density 0.006 0.000 18.36 0.000 0.006 0.007
## 54 Amerindian ~~ Amerindian 0.005 0.000 39.64 0.000 0.005 0.006
## 55 Amerindian ~~ Other 0.000 0.000 14.23 0.000 0.000 0.000
## 56 Amerindian ~~ homogeneity -0.002 0.000 -8.70 0.000 -0.003 -0.002
## 57 Amerindian ~~ density -0.014 0.001 -13.55 0.000 -0.016 -0.012
## 58 Other ~~ Other 0.000 0.000 39.64 0.000 0.000 0.000
## 59 Other ~~ homogeneity -0.001 0.000 -13.67 0.000 -0.001 -0.001
## 60 Other ~~ density 0.000 0.000 0.56 0.573 0.000 0.001
## 61 homogeneity ~~ homogeneity 0.034 0.001 39.64 0.000 0.033 0.036
## 62 homogeneity ~~ density -0.032 0.003 -12.40 0.000 -0.037 -0.027
## 63 density ~~ density 0.570 0.014 39.64 0.000 0.542 0.598
lavaanPlot(model = sem12, coefs = T)
#2008
path_str = "IQ ~ Black + Hispanic + Asian + Amerindian + Other
S ~ IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity
dem08_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density
rep08_frac ~ S + IQ + Black + Hispanic + Asian + Amerindian + Other + homogeneity + density"
sem08 = sem(path_str, data = d, mimic = "EQS", missing = "pairwise")
## Warning in lav_data_full(data = data, group = group, cluster = cluster, :
## lavaan WARNING: some observed variances are (at least) a factor 1000 times
## larger than others; use varTable(fit) to investigate
## Warning in lav_data_full(data = data, group = group, cluster = cluster, : lavaan WARNING: some cases are empty and will be ignored:
## 2383 3145 3146 3147
## Warning in lav_model_vcov(lavmodel = lavmodel2, lavsamplestats = lavsamplestats, : lavaan WARNING:
## The variance-covariance matrix of the estimated parameters (vcov)
## does not appear to be positive definite! The smallest eigenvalue
## (= 2.068942e-13) is close to zero. This may be a symptom that the
## model is not identified.
sem08 %>% parameterestimates()
## lhs op rhs est se z pvalue ci.lower ci.upper
## 1 IQ ~ Black -3.421 0.076 -44.79 0.000 -3.570 -3.271
## 2 IQ ~ Hispanic -2.123 0.085 -24.86 0.000 -2.290 -1.955
## 3 IQ ~ Asian 7.164 0.503 14.23 0.000 6.177 8.150
## 4 IQ ~ Amerindian -3.618 0.153 -23.62 0.000 -3.919 -3.318
## 5 IQ ~ Other -4.205 0.663 -6.34 0.000 -5.505 -2.906
## 6 S ~ IQ 0.599 0.016 36.78 0.000 0.567 0.630
## 7 S ~ Black -2.615 0.128 -20.43 0.000 -2.866 -2.364
## 8 S ~ Hispanic -0.876 0.114 -7.68 0.000 -1.099 -0.652
## 9 S ~ Asian 6.201 0.498 12.45 0.000 5.224 7.177
## 10 S ~ Amerindian -1.269 0.160 -7.91 0.000 -1.584 -0.955
## 11 S ~ Other -1.938 0.640 -3.03 0.002 -3.192 -0.683
## 12 S ~ homogeneity -0.676 0.107 -6.33 0.000 -0.886 -0.467
## 13 dem08_frac ~ S 0.047 0.003 14.00 0.000 0.040 0.054
## 14 dem08_frac ~ IQ -0.020 0.004 -5.44 0.000 -0.027 -0.013
## 15 dem08_frac ~ Black 0.842 0.026 32.87 0.000 0.792 0.893
## 16 dem08_frac ~ Hispanic 0.519 0.022 23.61 0.000 0.476 0.562
## 17 dem08_frac ~ Asian 1.311 0.101 13.04 0.000 1.114 1.508
## 18 dem08_frac ~ Amerindian 0.777 0.031 24.75 0.000 0.716 0.839
## 19 dem08_frac ~ Other 0.870 0.122 7.15 0.000 0.632 1.108
## 20 dem08_frac ~ homogeneity 0.536 0.020 26.18 0.000 0.496 0.576
## 21 dem08_frac ~ density 0.067 0.003 23.59 0.000 0.062 0.073
## 22 rep08_frac ~ S -0.048 0.003 -13.94 0.000 -0.054 -0.041
## 23 rep08_frac ~ IQ 0.021 0.004 5.74 0.000 0.014 0.029
## 24 rep08_frac ~ Black -0.822 0.026 -31.47 0.000 -0.873 -0.771
## 25 rep08_frac ~ Hispanic -0.504 0.022 -22.50 0.000 -0.548 -0.460
## 26 rep08_frac ~ Asian -1.372 0.102 -13.39 0.000 -1.573 -1.171
## 27 rep08_frac ~ Amerindian -0.768 0.032 -24.01 0.000 -0.831 -0.705
## 28 rep08_frac ~ Other -0.830 0.124 -6.70 0.000 -1.073 -0.587
## 29 rep08_frac ~ homogeneity -0.544 0.021 -26.07 0.000 -0.585 -0.503
## 30 rep08_frac ~ density -0.064 0.003 -22.10 0.000 -0.070 -0.058
## 31 IQ ~~ IQ 0.368 0.009 39.64 0.000 0.350 0.386
## 32 S ~~ S 0.306 0.008 39.64 0.000 0.291 0.321
## 33 dem08_frac ~~ dem08_frac 0.011 0.000 39.64 0.000 0.010 0.011
## 34 rep08_frac ~~ rep08_frac 0.011 0.000 39.64 0.000 0.011 0.012
## 35 dem08_frac ~~ rep08_frac -0.011 0.000 -39.60 0.000 -0.012 -0.010
## 36 Black ~~ Black 0.021 0.001 39.64 0.000 0.020 0.022
## 37 Black ~~ Hispanic -0.002 0.000 -5.95 0.000 -0.003 -0.001
## 38 Black ~~ Asian 0.000 0.000 0.73 0.466 0.000 0.000
## 39 Black ~~ Amerindian -0.001 0.000 -5.60 0.000 -0.001 -0.001
## 40 Black ~~ Other 0.000 0.000 -4.86 0.000 0.000 0.000
## 41 Black ~~ homogeneity -0.015 0.001 -28.18 0.000 -0.017 -0.014
## 42 Black ~~ density 0.026 0.002 13.06 0.000 0.022 0.030
## 43 Hispanic ~~ Hispanic 0.017 0.000 39.64 0.000 0.016 0.018
## 44 Hispanic ~~ Asian 0.000 0.000 7.71 0.000 0.000 0.001
## 45 Hispanic ~~ Amerindian 0.000 0.000 -2.23 0.025 -0.001 0.000
## 46 Hispanic ~~ Other 0.000 0.000 -1.41 0.160 0.000 0.000
## 47 Hispanic ~~ homogeneity -0.011 0.000 -22.53 0.000 -0.011 -0.010
## 48 Hispanic ~~ density -0.004 0.002 -2.35 0.019 -0.008 -0.001
## 49 Asian ~~ Asian 0.001 0.000 39.64 0.000 0.001 0.001
## 50 Asian ~~ Amerindian 0.000 0.000 -0.64 0.522 0.000 0.000
## 51 Asian ~~ Other 0.000 0.000 21.88 0.000 0.000 0.000
## 52 Asian ~~ homogeneity -0.002 0.000 -18.30 0.000 -0.002 -0.001
## 53 Asian ~~ density 0.006 0.000 18.36 0.000 0.006 0.007
## 54 Amerindian ~~ Amerindian 0.005 0.000 39.64 0.000 0.005 0.006
## 55 Amerindian ~~ Other 0.000 0.000 14.23 0.000 0.000 0.000
## 56 Amerindian ~~ homogeneity -0.002 0.000 -8.70 0.000 -0.003 -0.002
## 57 Amerindian ~~ density -0.014 0.001 -13.55 0.000 -0.016 -0.012
## 58 Other ~~ Other 0.000 0.000 39.64 0.000 0.000 0.000
## 59 Other ~~ homogeneity -0.001 0.000 -13.67 0.000 -0.001 -0.001
## 60 Other ~~ density 0.000 0.000 0.56 0.573 0.000 0.001
## 61 homogeneity ~~ homogeneity 0.034 0.001 39.64 0.000 0.033 0.036
## 62 homogeneity ~~ density -0.032 0.003 -12.40 0.000 -0.037 -0.027
## 63 density ~~ density 0.570 0.014 39.64 0.000 0.542 0.598
lavaanPlot(model = sem08, coefs = T)
#IQ
d2 %>%
filter(!State %in% c("Alaska", "Hawaii")) %>%
ggplot() +
geom_sf(aes(fill = IQ), lwd = 0) +
scale_fill_gradient("Intelligence", low = "red", high = "green") +
theme_classic()
GG_save("figures/IQ_map.png")
#Democrat
d2 %>%
filter(!State %in% c("Alaska", "Hawaii")) %>%
ggplot() +
geom_sf(aes(fill = dem16_advantage), lwd = 0) +
scale_fill_gradient("Democrat advantage 2016", low = "red", high = "blue") +
theme_classic()
GG_save("figures/dem2016_map.png")
#versions
write_sessioninfo()
## R version 3.6.1 (2019-07-05)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Linux Mint 19.1
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## attached base packages:
## [1] parallel stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] ggeffects_0.12.0 lavaanPlot_0.5.1 broom_0.5.2
## [4] rms_5.1-3.1 SparseM_1.77 sf_0.7-7
## [7] doFuture_0.8.1 iterators_1.0.12 foreach_1.4.7
## [10] future_1.14.0 globals_0.12.4 lavaan_0.6-5
## [13] kirkegaard_2018.05 metafor_2.1-0 Matrix_1.2-17
## [16] psych_1.8.12 magrittr_1.5 assertthat_0.2.1
## [19] weights_1.0 mice_3.6.0 gdata_2.18.0
## [22] Hmisc_4.2-0 Formula_1.2-3 survival_2.44-1.1
## [25] lattice_0.20-38 forcats_0.4.0 stringr_1.4.0
## [28] dplyr_0.8.3 purrr_0.3.2 readr_1.3.1
## [31] tidyr_1.0.0 tibble_2.1.3 ggplot2_3.2.1
## [34] tidyverse_1.2.1 pacman_0.5.1
##
## loaded via a namespace (and not attached):
## [1] readxl_1.3.1 backports_1.1.4 lwgeom_0.1-7
## [4] plyr_1.8.4 igraph_1.2.4.1 lazyeval_0.2.2
## [7] splines_3.6.1 listenv_0.7.0 TH.data_1.0-10
## [10] digest_0.6.21 htmltools_0.3.6 viridis_0.5.1
## [13] fansi_0.4.0 checkmate_1.9.4 cluster_2.1.0
## [16] modelr_0.1.5 sandwich_2.5-1 colorspace_1.4-1
## [19] rvest_0.3.4 haven_2.1.1 pan_1.6
## [22] xfun_0.9 crayon_1.3.4 jsonlite_1.6
## [25] lme4_1.1-21 zeallot_0.1.0 brew_1.0-6
## [28] zoo_1.8-6 glue_1.3.1 gtable_0.3.0
## [31] MatrixModels_0.4-1 sjmisc_2.8.1 Rook_1.1-1
## [34] jomo_2.6-9 scales_1.0.0 mvtnorm_1.0-11
## [37] DBI_1.0.0 Rcpp_1.0.2 viridisLite_0.3.0
## [40] htmlTable_1.13.2 units_0.6-3 foreign_0.8-72
## [43] stats4_3.6.1 htmlwidgets_1.3 httr_1.4.1
## [46] DiagrammeR_1.0.1 RColorBrewer_1.1-2 ellipsis_0.3.0
## [49] acepack_1.4.1 pkgconfig_2.0.3 XML_3.98-1.20
## [52] nnet_7.3-12 utf8_1.1.4 labeling_0.3
## [55] tidyselect_0.2.5 rlang_0.4.0 multilevel_2.6
## [58] munsell_0.5.0 cellranger_1.1.0 tools_3.6.1
## [61] visNetwork_2.0.7 downloader_0.4 cli_1.1.0
## [64] generics_0.0.2 sjlabelled_1.1.0 evaluate_0.14
## [67] yaml_2.2.0 knitr_1.25 mitml_0.3-7
## [70] nlme_3.1-141 quantreg_5.51 xml2_1.2.2
## [73] psychometric_2.2 compiler_3.6.1 rstudioapi_0.10
## [76] rgexf_0.15.3 e1071_1.7-2 pbivnorm_0.6.0
## [79] stringi_1.4.3 classInt_0.4-1 nloptr_1.2.1
## [82] vctrs_0.2.0 pillar_1.4.2 lifecycle_0.1.0
## [85] data.table_1.12.2 insight_0.4.1 R6_2.4.0
## [88] latticeExtra_0.6-28 KernSmooth_2.23-15 gridExtra_2.3
## [91] codetools_0.2-16 polspline_1.1.15 boot_1.3-23
## [94] MASS_7.3-51.4 gtools_3.8.1 withr_2.1.2
## [97] mnormt_1.5-5 multcomp_1.4-10 hms_0.5.1
## [100] influenceR_0.1.0 grid_3.6.1 rpart_4.1-15
## [103] class_7.3-15 minqa_1.2.4 rmarkdown_1.15
## [106] lubridate_1.7.4 base64enc_0.1-3
#write data
d %>% write_rds("data/data_out.rds", compress = "xz")
d %>% write_csv("data/data_out.csv", na = "")