Introduction

To settle the online debate on which subtest of intelligence measures it the best, I collected 234 effect sizes, representing 430,000 individuals. I looked in several public datasets (e.g. NLSY) and a few meta-analyses (e.g.  Jensen 1985) to speed up the process.

I excluded any study that had less than 100 individuals or six subtests, had no g-loadings, did not use univariate models, or overlapped with other samples. I then searched for publications by typing (WAIS/Weschler/Woodcock Johnson/Stanford Binet) + factor analysis.

First, sample size + k

testn <- unique(jg %>% select(n, source))
sum(testn$n)
[1] 427596
nrow(testn)
[1] 18

Data-analysis

Median by study. No adjustments

means <- jg %>% group_by(Macrogroup) %>% summarise(median=median(g.loading, na.rm=T)) %>% arrange(-median)
print(means, n=43)

Mixed-effects meta-analysis to adjust for the effects of individual datasets. The effects of each dataset relative to the reference are fairly split between positive and negative, meaning that the arbitrary choice is probably not biasing the overall mean.

jg$se <- 1/sqrt(jg$n)
meta <- rma(data=jg, yi=g.loading, sei=se, mods = ~ source + Macrogroup)
summary(meta)

Mixed-Effects Model (k = 233; tau^2 estimator: REML)

   logLik   deviance        AIC        BIC       AICc   
 193.4114  -386.8228  -294.8228  -145.9465  -264.1561   

tau^2 (estimated amount of residual heterogeneity):     0.0066 (SE = 0.0008)
tau (square root of estimated tau^2 value):             0.0809
I^2 (residual heterogeneity / unaccounted variability): 99.30%
H^2 (unaccounted variability / sampling variability):   143.26
R^2 (amount of heterogeneity accounted for):            66.13%

Test for Residual Heterogeneity:
QE(df = 188) = 31568.8888, p-val < .0001

Test of Moderators (coefficients 2:45):
QM(df = 44) = 448.5662, p-val < .0001

Model Results:

---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Cleaning up the means and posting them.

testvector <- data.frame(Macrogroup=names(coefficients(meta)), gloadings=as.numeric(coefficients(meta))+0.6695, SE=meta$se)
testvector$Macrogroup[18] <- 'Macrogroup2D spatial ability'
testvector$gloadings[18] <- 0.6695
testvector$Macrogroup[2:length(testvector$Macrogroup)] <- sapply(testvector$Macrogroup[2:length(testvector$Macrogroup)], function(x) substr(x, start = 11, stop = nchar(x)))

testvector <- testvector[18:45, ] %>% arrange(-gloadings)
testvector[, 2:3] <- round(testvector[, 2:3], 3)

testvector

Discussion

It looks like reading comprehension came out on top. It makes sense, as it’s measuring a range of abilities indirectly (e.g. memory, verbal ability, ability to synthesize and connect information). Verbal ability seems to beat mathematical ability slightly, which is interesting, because mathematical ability is notoriously easy to practice, which actually suggests that mathematical ability may in fact be a truly better measurement of intelligence. Dexterity and processing speed stand out as rather weak measurements of intelligence.

LS0tCnRpdGxlOiAiZy1sb2FkaW5nIGJ5IHN1YnRlc3QiCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KCiMjIyBJbnRyb2R1Y3Rpb24KCgpUbyBzZXR0bGUgdGhlIG9ubGluZSBkZWJhdGUgb24gd2hpY2ggc3VidGVzdCBvZiBpbnRlbGxpZ2VuY2UgbWVhc3VyZXMgaXQgdGhlIGJlc3QsCkkgY29sbGVjdGVkIDIzNCBlZmZlY3Qgc2l6ZXMsIHJlcHJlc2VudGluZyA0MzAsMDAwIGluZGl2aWR1YWxzLgpJIGxvb2tlZCBpbiBzZXZlcmFsIHB1YmxpYyBkYXRhc2V0cyAoZS5nLiBOTFNZKSBhbmQgYSBmZXcgbWV0YS1hbmFseXNlcyAoZS5nLiAKSmVuc2VuIDE5ODUpIHRvIHNwZWVkIHVwIHRoZSBwcm9jZXNzLiAKCkkgZXhjbHVkZWQgYW55IHN0dWR5IHRoYXQgaGFkIGxlc3MgdGhhbiAxMDAgaW5kaXZpZHVhbHMgb3Igc2l4IHN1YnRlc3RzLCAKaGFkIG5vIGctbG9hZGluZ3MsIGRpZCBub3QgdXNlIHVuaXZhcmlhdGUgbW9kZWxzLCBvciBvdmVybGFwcGVkIHdpdGggb3RoZXIgc2FtcGxlcy4KSSB0aGVuIHNlYXJjaGVkIGZvciBwdWJsaWNhdGlvbnMgYnkgdHlwaW5nIChXQUlTL1dlc2NobGVyL1dvb2Rjb2NrIEpvaG5zb24vU3RhbmZvcmQgQmluZXQpCisgZmFjdG9yIGFuYWx5c2lzLgoKRmlyc3QsIHNhbXBsZSBzaXplICsgawoKYGBge3J9CnRlc3RuIDwtIHVuaXF1ZShqZyAlPiUgc2VsZWN0KG4sIHNvdXJjZSkpCnN1bSh0ZXN0biRuKQpucm93KHRlc3RuKQpgYGAKCiMjIyBEYXRhLWFuYWx5c2lzCgoKTWVkaWFuIGJ5IHN0dWR5LiBObyBhZGp1c3RtZW50cwpgYGB7cn0KbWVhbnMgPC0gamcgJT4lIGdyb3VwX2J5KE1hY3JvZ3JvdXApICU+JSBzdW1tYXJpc2UobWVkaWFuPW1lZGlhbihnLmxvYWRpbmcsIG5hLnJtPVQpKSAlPiUgYXJyYW5nZSgtbWVkaWFuKQpwcmludChtZWFucywgbj00MykKYGBgCgpNaXhlZC1lZmZlY3RzIG1ldGEtYW5hbHlzaXMgdG8gYWRqdXN0IGZvciB0aGUgZWZmZWN0cyBvZiBpbmRpdmlkdWFsIGRhdGFzZXRzLgpUaGUgZWZmZWN0cyBvZiBlYWNoIGRhdGFzZXQgcmVsYXRpdmUgdG8gdGhlIHJlZmVyZW5jZSBhcmUgZmFpcmx5IHNwbGl0IGJldHdlZW4KcG9zaXRpdmUgYW5kIG5lZ2F0aXZlLCBtZWFuaW5nIHRoYXQgdGhlIGFyYml0cmFyeSBjaG9pY2UgaXMgcHJvYmFibHkgbm90CmJpYXNpbmcgdGhlIG92ZXJhbGwgbWVhbi4KYGBge3J9CmpnJHNlIDwtIDEvc3FydChqZyRuKQptZXRhIDwtIHJtYShkYXRhPWpnLCB5aT1nLmxvYWRpbmcsIHNlaT1zZSwgbW9kcyA9IH4gc291cmNlICsgTWFjcm9ncm91cCkKc3VtbWFyeShtZXRhKQpgYGAKCkNsZWFuaW5nIHVwIHRoZSBtZWFucyBhbmQgcG9zdGluZyB0aGVtLgpgYGB7cn0KdGVzdHZlY3RvciA8LSBkYXRhLmZyYW1lKE1hY3JvZ3JvdXA9bmFtZXMoY29lZmZpY2llbnRzKG1ldGEpKSwgZ2xvYWRpbmdzPWFzLm51bWVyaWMoY29lZmZpY2llbnRzKG1ldGEpKSswLjY2OTUsIFNFPW1ldGEkc2UpCnRlc3R2ZWN0b3IkTWFjcm9ncm91cFsxOF0gPC0gJ01hY3JvZ3JvdXAyRCBzcGF0aWFsIGFiaWxpdHknCnRlc3R2ZWN0b3IkZ2xvYWRpbmdzWzE4XSA8LSAwLjY2OTUKdGVzdHZlY3RvciRNYWNyb2dyb3VwWzI6bGVuZ3RoKHRlc3R2ZWN0b3IkTWFjcm9ncm91cCldIDwtIHNhcHBseSh0ZXN0dmVjdG9yJE1hY3JvZ3JvdXBbMjpsZW5ndGgodGVzdHZlY3RvciRNYWNyb2dyb3VwKV0sIGZ1bmN0aW9uKHgpIHN1YnN0cih4LCBzdGFydCA9IDExLCBzdG9wID0gbmNoYXIoeCkpKQoKdGVzdHZlY3RvciA8LSB0ZXN0dmVjdG9yWzE4OjQ1LCBdICU+JSBhcnJhbmdlKC1nbG9hZGluZ3MpCnRlc3R2ZWN0b3JbLCAyOjNdIDwtIHJvdW5kKHRlc3R2ZWN0b3JbLCAyOjNdLCAzKQoKdGVzdHZlY3RvcgpgYGAKCiMjIyBEaXNjdXNzaW9uCgoKSXQgbG9va3MgbGlrZSByZWFkaW5nIGNvbXByZWhlbnNpb24gY2FtZSBvdXQgb24gdG9wLiBJdCBtYWtlcyBzZW5zZSwgYXMgaXQncwptZWFzdXJpbmcgYSByYW5nZSBvZiBhYmlsaXRpZXMgaW5kaXJlY3RseSAoZS5nLiBtZW1vcnksIHZlcmJhbCBhYmlsaXR5LCBhYmlsaXR5CnRvIHN5bnRoZXNpemUgYW5kIGNvbm5lY3QgaW5mb3JtYXRpb24pLiBWZXJiYWwgYWJpbGl0eSBzZWVtcyB0byBiZWF0IG1hdGhlbWF0aWNhbAphYmlsaXR5IHNsaWdodGx5LCB3aGljaCBpcyBpbnRlcmVzdGluZywgYmVjYXVzZSBtYXRoZW1hdGljYWwgYWJpbGl0eSBpcyBub3RvcmlvdXNseQplYXN5IHRvIHByYWN0aWNlLCB3aGljaCBhY3R1YWxseSBzdWdnZXN0cyB0aGF0IG1hdGhlbWF0aWNhbCBhYmlsaXR5IG1heSBpbiBmYWN0IGJlIAphIHRydWx5IGJldHRlciBtZWFzdXJlbWVudCBvZiBpbnRlbGxpZ2VuY2UuIERleHRlcml0eSBhbmQgcHJvY2Vzc2luZyBzcGVlZApzdGFuZCBvdXQgYXMgcmF0aGVyIHdlYWsgbWVhc3VyZW1lbnRzIG9mIGludGVsbGlnZW5jZS4=