Packages

options(digits = 2)
library(pacman)
p_load(psych, car, VIM, kirkegaard, weights)

Data

#Load data
data = read.csv("Lynn_table.csv", skip=2, row.names=1)

#Data groups
S.new.data = data[,c(11,13,17)]
S.old.data = data[,c(10,12,15:16)]
S.all.data = data[,c(10:13,15:17)]

Cog.data = subset(data, select=c("Reading","Math", "Science"))

Missing data

silence(matrixplot(data, labels=strtrim(colnames(data),8))) #how does missing data look like?

silence({i.data = irmi(data, noise.factor=0)}) #create imputed dataset

#Factor analysis
S.new.fa = fa(S.new.data)
S.old.fa = fa(S.old.data)
S.all.fa = fa(S.all.data)
G.fa = fa(Cog.data)

Loadings

fa_plot_loadings(S.all.fa)

ggsave("loadings1.png")
## Saving 7 x 5 in image

Scores

#DF with latent results
data["G"] = as.numeric(G.fa$scores)
data["S.new"] = as.numeric(S.new.fa$scores)
data["S.old"] = as.numeric(S.old.fa$scores)
data["S.all"] = as.numeric(S.all.fa$scores)

#Cors
(cors1 = wtd.cors(data) %>% round(2))
##                         Reading  Math Science Mean.education    IQ
## Reading                    1.00  0.99    0.99           1.00  0.99
## Math                       0.99  1.00    0.99           1.00  0.99
## Science                    0.99  0.99    1.00           1.00  0.99
## Mean.education             1.00  1.00    1.00           1.00  0.99
## IQ                         0.99  0.99    0.99           0.99  1.00
## Stature.1855               0.92  0.94    0.93           0.93  0.92
## Stature1910                0.91  0.90    0.88           0.89  0.90
## Stature1927                0.93  0.92    0.91           0.92  0.93
## Stature1980                0.94  0.95    0.94           0.94  0.93
## Per.cap.income1970         0.82  0.80    0.81           0.81  0.84
## Per.cap.income2003         0.92  0.92    0.92           0.92  0.94
## Infant.mortality1955_7    -0.84 -0.83   -0.86          -0.85 -0.84
## Infant.mortality1999_02   -0.87 -0.86   -0.88          -0.87 -0.86
## Literacy1880               0.86  0.83    0.82           0.84  0.86
## Years.educ1951             0.92  0.90    0.89           0.90  0.93
## Years.educ1971             0.88  0.86    0.86           0.87  0.87
## Years.educ2001             0.89  0.88    0.88           0.88  0.89
## Latitude                   0.97  0.96    0.96           0.96  0.96
## PISA12Math                 0.94  0.96    0.95           0.95  0.96
## G                          1.00  1.00    1.00           1.00  0.99
## S.new                      0.93  0.93    0.94           0.93  0.93
## S.old                      0.92  0.91    0.91           0.91  0.92
## S.all                      0.94  0.93    0.93           0.94  0.94
##                         Stature.1855 Stature1910 Stature1927 Stature1980
## Reading                         0.92        0.91        0.93        0.94
## Math                            0.94        0.90        0.92        0.95
## Science                         0.93        0.88        0.91        0.94
## Mean.education                  0.93        0.89        0.92        0.94
## IQ                              0.92        0.90        0.93        0.93
## Stature.1855                    1.00        0.93        0.96        0.94
## Stature1910                     0.93        1.00        0.96        0.87
## Stature1927                     0.96        0.96        1.00        0.92
## Stature1980                     0.94        0.87        0.92        1.00
## Per.cap.income1970              0.67        0.73        0.74        0.66
## Per.cap.income2003              0.84        0.86        0.86        0.84
## Infant.mortality1955_7         -0.78       -0.67       -0.72       -0.66
## Infant.mortality1999_02        -0.77       -0.67       -0.76       -0.81
## Literacy1880                    0.75        0.87        0.81        0.67
## Years.educ1951                  0.82        0.90        0.89        0.83
## Years.educ1971                  0.78        0.83        0.86        0.79
## Years.educ2001                  0.72        0.69        0.76        0.80
## Latitude                        0.86        0.87        0.87        0.88
## PISA12Math                      0.88        0.83        0.83        0.90
## G                               0.93        0.89        0.92        0.94
## S.new                           0.87        0.83        0.88        0.89
## S.old                           0.92        0.93        0.92        0.86
## S.all                           0.92        0.91        0.91        0.88
##                         Per.cap.income1970 Per.cap.income2003
## Reading                               0.82               0.92
## Math                                  0.80               0.92
## Science                               0.81               0.92
## Mean.education                        0.81               0.92
## IQ                                    0.84               0.94
## Stature.1855                          0.67               0.84
## Stature1910                           0.73               0.86
## Stature1927                           0.74               0.86
## Stature1980                           0.66               0.84
## Per.cap.income1970                    1.00               0.93
## Per.cap.income2003                    0.93               1.00
## Infant.mortality1955_7               -0.68              -0.72
## Infant.mortality1999_02              -0.75              -0.83
## Literacy1880                          0.90               0.88
## Years.educ1951                        0.89               0.94
## Years.educ1971                        0.86               0.88
## Years.educ2001                        0.77               0.85
## Latitude                              0.80               0.90
## PISA12Math                            0.75               0.87
## G                                     0.81               0.92
## S.new                                 0.85               0.95
## S.old                                 0.92               0.95
## S.all                                 0.93               0.98
##                         Infant.mortality1955_7 Infant.mortality1999_02
## Reading                                  -0.84                   -0.87
## Math                                     -0.83                   -0.86
## Science                                  -0.86                   -0.88
## Mean.education                           -0.85                   -0.87
## IQ                                       -0.84                   -0.86
## Stature.1855                             -0.78                   -0.77
## Stature1910                              -0.67                   -0.67
## Stature1927                              -0.72                   -0.76
## Stature1980                              -0.66                   -0.81
## Per.cap.income1970                       -0.68                   -0.75
## Per.cap.income2003                       -0.72                   -0.83
## Infant.mortality1955_7                    1.00                    0.67
## Infant.mortality1999_02                   0.67                    1.00
## Literacy1880                             -0.66                   -0.64
## Years.educ1951                           -0.63                   -0.76
## Years.educ1971                           -0.64                   -0.75
## Years.educ2001                           -0.72                   -0.87
## Latitude                                 -0.68                   -0.90
## PISA12Math                               -0.76                   -0.82
## G                                        -0.85                   -0.87
## S.new                                    -0.73                   -0.94
## S.old                                    -0.72                   -0.81
## S.all                                    -0.74                   -0.85
##                         Literacy1880 Years.educ1951 Years.educ1971
## Reading                         0.86           0.92           0.88
## Math                            0.83           0.90           0.86
## Science                         0.82           0.89           0.86
## Mean.education                  0.84           0.90           0.87
## IQ                              0.86           0.93           0.87
## Stature.1855                    0.75           0.82           0.78
## Stature1910                     0.87           0.90           0.83
## Stature1927                     0.81           0.89           0.86
## Stature1980                     0.67           0.83           0.79
## Per.cap.income1970              0.90           0.89           0.86
## Per.cap.income2003              0.88           0.94           0.88
## Infant.mortality1955_7         -0.66          -0.63          -0.64
## Infant.mortality1999_02        -0.64          -0.76          -0.75
## Literacy1880                    1.00           0.92           0.86
## Years.educ1951                  0.92           1.00           0.96
## Years.educ1971                  0.86           0.96           1.00
## Years.educ2001                  0.69           0.86           0.91
## Latitude                        0.84           0.89           0.80
## PISA12Math                      0.76           0.81           0.71
## G                               0.84           0.91           0.87
## S.new                           0.78           0.91           0.89
## S.old                           0.95           0.98           0.98
## S.all                           0.94           0.97           0.94
##                         Years.educ2001 Latitude PISA12Math     G S.new
## Reading                           0.89     0.97       0.94  1.00  0.93
## Math                              0.88     0.96       0.96  1.00  0.93
## Science                           0.88     0.96       0.95  1.00  0.94
## Mean.education                    0.88     0.96       0.95  1.00  0.93
## IQ                                0.89     0.96       0.96  0.99  0.93
## Stature.1855                      0.72     0.86       0.88  0.93  0.87
## Stature1910                       0.69     0.87       0.83  0.89  0.83
## Stature1927                       0.76     0.87       0.83  0.92  0.88
## Stature1980                       0.80     0.88       0.90  0.94  0.89
## Per.cap.income1970                0.77     0.80       0.75  0.81  0.85
## Per.cap.income2003                0.85     0.90       0.87  0.92  0.95
## Infant.mortality1955_7           -0.72    -0.68      -0.76 -0.85 -0.73
## Infant.mortality1999_02          -0.87    -0.90      -0.82 -0.87 -0.94
## Literacy1880                      0.69     0.84       0.76  0.84  0.78
## Years.educ1951                    0.86     0.89       0.81  0.91  0.91
## Years.educ1971                    0.91     0.80       0.71  0.87  0.89
## Years.educ2001                    1.00     0.73       0.67  0.88  0.97
## Latitude                          0.73     1.00       0.93  0.96  0.96
## PISA12Math                        0.67     0.93       1.00  0.95  0.89
## G                                 0.88     0.96       0.95  1.00  0.93
## S.new                             0.97     0.96       0.89  0.93  1.00
## S.old                             0.94     0.93       0.85  0.91  0.94
## S.all                             0.96     0.95       0.89  0.94  0.97
##                         S.old S.all
## Reading                  0.92  0.94
## Math                     0.91  0.93
## Science                  0.91  0.93
## Mean.education           0.91  0.94
## IQ                       0.92  0.94
## Stature.1855             0.92  0.92
## Stature1910              0.93  0.91
## Stature1927              0.92  0.91
## Stature1980              0.86  0.88
## Per.cap.income1970       0.92  0.93
## Per.cap.income2003       0.95  0.98
## Infant.mortality1955_7  -0.72 -0.74
## Infant.mortality1999_02 -0.81 -0.85
## Literacy1880             0.95  0.94
## Years.educ1951           0.98  0.97
## Years.educ1971           0.98  0.94
## Years.educ2001           0.94  0.96
## Latitude                 0.93  0.95
## PISA12Math               0.85  0.89
## G                        0.91  0.94
## S.new                    0.94  0.97
## S.old                    1.00  0.99
## S.all                    0.99  1.00
#plot
GG_scatter(data, "G", "S.all") +
  xlab("G") + ylab("S, general socioeconomic factor (all Lynn data)")

ggsave("S_G.png")
## Saving 7 x 5 in image
#MCV
fa_Jensens_method(S.all.fa, data, criterion = "G")
## Using Pearson correlations for the criterion-indicators relationships.

ggsave("MCV1.png")
## Saving 7 x 5 in image

New data

data2 = read.csv("data.csv", row.names=1, encoding = "UTF-8")

#PP - Political participation index
PP = data2[,grep("PP\\d",colnames(data2))]
PP.mean = data.frame(PP.mean=apply(PP,1,mean, na.rm=TRUE))

#NW - Normal weight, percent
NW = data2[,grep("NW\\d",colnames(data2))]
NW.mean = data.frame(NW.mean=apply(NW,1,mean, na.rm=TRUE))

#SMOKE - smokers percent
SMOKE = data2[,grep("SMOKE\\d",colnames(data2))]
SMOKE.mean = data.frame(SMOKE.mean=apply(SMOKE,1,mean, na.rm=TRUE))

#IH - Intentional Homicide
IH = data2[,grep("IH\\d",colnames(data2))]
IH.mean = data.frame(IH.mean=apply(IH,1,mean, na.rm=TRUE))

#TC - Total crime
TC = data2[,grep("TC\\d",colnames(data2))]
TC.mean = data.frame(TC.mean=apply(TC,1,mean, na.rm=TRUE))

#UEMPLOY - Unemployment
UNEMPLOY = data2[,grep("UEMPLOY\\d",colnames(data2))]
UNEMPLOY.mean = data.frame(UNEMPLOY.mean=apply(UNEMPLOY,1,mean, na.rm=TRUE))

#LEM - Life expectancy males
LEM = data2[,grep("LEM\\d",colnames(data2))]
LEM.mean = data.frame(LEM.mean=apply(LEM,1,mean, na.rm=TRUE))

#TFR - Total Fertility Rate
TFR = data2[,grep("TFR\\d",colnames(data2))]
TFR.mean = data.frame(TFR.mean=apply(TFR,1,mean, na.rm=TRUE))

#TRUST - Interpersonal trust index
TRUST = data2[,grep("TRUST\\d",colnames(data2))]
TRUST.mean = data.frame(TRUST.mean=apply(TRUST,1,mean, na.rm=TRUE))

#NoSave - Percent without savings
NoSave = data2[,grep("NoSave\\d",colnames(data2))]
NoSave.mean = data.frame(NoSave.mean=apply(NoSave,1,mean, na.rm=TRUE))

#Make reduced dataset
data2.r = cbind(PP.mean,
              NW.mean,
              SMOKE.mean,
              IH.mean,
              TC.mean,
              UNEMPLOY.mean,
              LEM.mean,
              TFR.mean,
              TRUST.mean,
              NoSave.mean,
              data2["PISA.M.12"],
              data2["PISA.V.12"],
              data2["PISA.S.12"]
              )

Factor analyze

#Factor analysis for S
S2.fa = fa(data2.r[1:10])
## The estimated weights for the factor scores are probably incorrect.  Try a different factor extraction method.
data2.r["S2"] = as.numeric(S2.fa$scores)

#Loadings
fa_plot_loadings(S2.fa)

ggsave("loadings2.png")
## Saving 7 x 5 in image
#Factor for G2
G2.fa = fa(data2.r[11:13])
fa_plot_loadings(G2.fa)

data2.r["G2"] = as.numeric(G2.fa$scores)

#Cors
data2.r.rank = data.frame(apply(data2.r, 2, rank))

wtd.cors(data2.r) %>% round(2)
##               PP.mean NW.mean SMOKE.mean IH.mean TC.mean UNEMPLOY.mean
## PP.mean          1.00    0.63       0.04   -0.54    0.53         -0.73
## NW.mean          0.63    1.00      -0.20   -0.43    0.33         -0.74
## SMOKE.mean       0.04   -0.20       1.00    0.11    0.50          0.28
## IH.mean         -0.54   -0.43       0.11    1.00   -0.03          0.76
## TC.mean          0.53    0.33       0.50   -0.03    1.00         -0.20
## UNEMPLOY.mean   -0.73   -0.74       0.28    0.76   -0.20          1.00
## LEM.mean         0.43    0.35      -0.26   -0.40    0.02         -0.57
## TFR.mean         0.19    0.58      -0.10   -0.21    0.11         -0.58
## TRUST.mean       0.46    0.85      -0.41   -0.52    0.00         -0.78
## NoSave.mean     -0.63   -0.75       0.27    0.73   -0.13          0.90
## PISA.M.12        0.70    0.60      -0.23   -0.75    0.22         -0.89
## PISA.V.12        0.61    0.53      -0.23   -0.75    0.22         -0.83
## PISA.S.12        0.73    0.68      -0.22   -0.74    0.26         -0.91
## S2               0.64    0.79      -0.24   -0.62    0.18         -0.93
## G2               0.70    0.62      -0.22   -0.75    0.23         -0.89
##               LEM.mean TFR.mean TRUST.mean NoSave.mean PISA.M.12 PISA.V.12
## PP.mean           0.43     0.19       0.46       -0.63      0.70      0.61
## NW.mean           0.35     0.58       0.85       -0.75      0.60      0.53
## SMOKE.mean       -0.26    -0.10      -0.41        0.27     -0.23     -0.23
## IH.mean          -0.40    -0.21      -0.52        0.73     -0.75     -0.75
## TC.mean           0.02     0.11       0.00       -0.13      0.22      0.22
## UNEMPLOY.mean    -0.57    -0.58      -0.78        0.90     -0.89     -0.83
## LEM.mean          1.00     0.25       0.31       -0.47      0.54      0.45
## TFR.mean          0.25     1.00       0.67       -0.65      0.53      0.50
## TRUST.mean        0.31     0.67       1.00       -0.87      0.64      0.57
## NoSave.mean      -0.47    -0.65      -0.87        1.00     -0.86     -0.79
## PISA.M.12         0.54     0.53       0.64       -0.86      1.00      0.98
## PISA.V.12         0.45     0.50       0.57       -0.79      0.98      1.00
## PISA.S.12         0.52     0.55       0.68       -0.87      0.99      0.97
## S2                0.48     0.55       0.83       -0.91      0.78      0.69
## G2                0.53     0.53       0.64       -0.86      1.00      0.98
##               PISA.S.12    S2    G2
## PP.mean            0.73  0.64  0.70
## NW.mean            0.68  0.79  0.62
## SMOKE.mean        -0.22 -0.24 -0.22
## IH.mean           -0.74 -0.62 -0.75
## TC.mean            0.26  0.18  0.23
## UNEMPLOY.mean     -0.91 -0.93 -0.89
## LEM.mean           0.52  0.48  0.53
## TFR.mean           0.55  0.55  0.53
## TRUST.mean         0.68  0.83  0.64
## NoSave.mean       -0.87 -0.91 -0.86
## PISA.M.12          0.99  0.78  1.00
## PISA.V.12          0.97  0.69  0.98
## PISA.S.12          1.00  0.80  0.99
## S2                 0.80  1.00  0.78
## G2                 0.99  0.78  1.00
wtd.cors(data2.r.rank) %>% round(2)
##               PP.mean NW.mean SMOKE.mean IH.mean TC.mean UNEMPLOY.mean
## PP.mean          1.00    0.50       0.15   -0.35    0.48         -0.54
## NW.mean          0.50    1.00      -0.20   -0.46    0.17         -0.72
## SMOKE.mean       0.15   -0.20       1.00    0.40    0.59          0.40
## IH.mean         -0.35   -0.46       0.40    1.00    0.39          0.84
## TC.mean          0.48    0.17       0.59    0.39    1.00          0.09
## UNEMPLOY.mean   -0.54   -0.72       0.40    0.84    0.09          1.00
## LEM.mean         0.37    0.29      -0.07   -0.54    0.00         -0.56
## TFR.mean         0.14    0.57      -0.02   -0.47    0.08         -0.65
## TRUST.mean       0.56    0.89      -0.30   -0.56    0.03         -0.84
## NoSave.mean     -0.60   -0.53       0.06    0.60   -0.18          0.73
## PISA.M.12        0.58    0.62      -0.29   -0.80   -0.01         -0.90
## PISA.V.12        0.49    0.60      -0.36   -0.74    0.03         -0.85
## PISA.S.12        0.60    0.70      -0.33   -0.78    0.01         -0.92
## S2               0.51    0.77      -0.25   -0.76   -0.05         -0.92
## G2               0.56    0.64      -0.33   -0.81   -0.02         -0.92
##               LEM.mean TFR.mean TRUST.mean NoSave.mean PISA.M.12 PISA.V.12
## PP.mean           0.37     0.14       0.56       -0.60      0.58      0.49
## NW.mean           0.29     0.57       0.89       -0.53      0.62      0.60
## SMOKE.mean       -0.07    -0.02      -0.30        0.06     -0.29     -0.36
## IH.mean          -0.54    -0.47      -0.56        0.60     -0.80     -0.74
## TC.mean           0.00     0.08       0.03       -0.18     -0.01      0.03
## UNEMPLOY.mean    -0.56    -0.65      -0.84        0.73     -0.90     -0.85
## LEM.mean          1.00     0.26       0.25       -0.37      0.62      0.48
## TFR.mean          0.26     1.00       0.55       -0.46      0.60      0.62
## TRUST.mean        0.25     0.55       1.00       -0.62      0.70      0.66
## NoSave.mean      -0.37    -0.46      -0.62        1.00     -0.64     -0.59
## PISA.M.12         0.62     0.60       0.70       -0.64      1.00      0.96
## PISA.V.12         0.48     0.62       0.66       -0.59      0.96      1.00
## PISA.S.12         0.52     0.64       0.78       -0.67      0.98      0.97
## S2                0.46     0.62       0.85       -0.68      0.87      0.82
## G2                0.59     0.63       0.71       -0.66      1.00      0.97
##               PISA.S.12    S2    G2
## PP.mean            0.60  0.51  0.56
## NW.mean            0.70  0.77  0.64
## SMOKE.mean        -0.33 -0.25 -0.33
## IH.mean           -0.78 -0.76 -0.81
## TC.mean            0.01 -0.05 -0.02
## UNEMPLOY.mean     -0.92 -0.92 -0.92
## LEM.mean           0.52  0.46  0.59
## TFR.mean           0.64  0.62  0.63
## TRUST.mean         0.78  0.85  0.71
## NoSave.mean       -0.67 -0.68 -0.66
## PISA.M.12          0.98  0.87  1.00
## PISA.V.12          0.97  0.82  0.97
## PISA.S.12          1.00  0.88  0.99
## S2                 0.88  1.00  0.88
## G2                 0.99  0.88  1.00
#plot
GG_scatter(data2.r, "G2", "S2") + labs(x = "G\n(based on PISA 2012)", y ="S, general socioeconomic factor\n(10 indicator)")

ggsave("G2_S2.png")
## Saving 7 x 5 in image
#MCV
fa_Jensens_method(S2.fa, data2.r, criterion = "G2")
## Using Pearson correlations for the criterion-indicators relationships.

ggsave("MCV2.png")
## Saving 7 x 5 in image

Cross dataset comparison

## Cross dataset comparison
cross.DF = merge_datasets(data[ , c("G", "S.all")], data2.r[ , c("G2", "S2")])

#merge regions
cross.DF["Abruzzi Basilicata", "G2"] = (cross.DF["Abruzzo", "G2"] + cross.DF["Basilicata","G2"]) / 2
cross.DF["Abruzzi Basilicata", "S2"] = (cross.DF["Abruzzo", "S2"] + cross.DF["Basilicata","S2"]) / 2

wtd.cors(cross.DF) %>% round(2)
##          G S.all   G2   S2
## G     1.00  0.94 0.95 0.88
## S.all 0.94  1.00 0.89 0.93
## G2    0.95  0.89 1.00 0.78
## S2    0.88  0.93 0.78 1.00
#plot
GG_scatter(cross.DF, "G", "G2") +
  labs(x = "G\n(Lynn's data)", y ="G\n(New dataset")

ggsave("G_G2.png")
## Saving 7 x 5 in image
GG_scatter(cross.DF, "S.all", "S2") +
  labs(x = "S\n(Lynn's data)", y = "S\n(New dataset")

ggsave("S_S2.png")
## Saving 7 x 5 in image

Correlations

wtd.cors(data2.r)
##               PP.mean NW.mean SMOKE.mean IH.mean TC.mean UNEMPLOY.mean
## PP.mean         1.000    0.63      0.039  -0.538   0.528         -0.73
## NW.mean         0.625    1.00     -0.202  -0.426   0.335         -0.74
## SMOKE.mean      0.039   -0.20      1.000   0.113   0.499          0.28
## IH.mean        -0.538   -0.43      0.113   1.000  -0.033          0.76
## TC.mean         0.528    0.33      0.499  -0.033   1.000         -0.20
## UNEMPLOY.mean  -0.728   -0.74      0.282   0.758  -0.201          1.00
## LEM.mean        0.434    0.35     -0.264  -0.399   0.021         -0.57
## TFR.mean        0.187    0.58     -0.103  -0.211   0.110         -0.58
## TRUST.mean      0.462    0.85     -0.414  -0.523  -0.004         -0.78
## NoSave.mean    -0.633   -0.75      0.270   0.725  -0.129          0.90
## PISA.M.12       0.699    0.60     -0.225  -0.747   0.217         -0.89
## PISA.V.12       0.606    0.53     -0.231  -0.753   0.224         -0.83
## PISA.S.12       0.734    0.68     -0.218  -0.737   0.261         -0.91
## S2              0.638    0.79     -0.235  -0.624   0.180         -0.93
## G2              0.701    0.62     -0.225  -0.748   0.230         -0.89
##               LEM.mean TFR.mean TRUST.mean NoSave.mean PISA.M.12 PISA.V.12
## PP.mean          0.434     0.19      0.462       -0.63      0.70      0.61
## NW.mean          0.348     0.58      0.851       -0.75      0.60      0.53
## SMOKE.mean      -0.264    -0.10     -0.414        0.27     -0.23     -0.23
## IH.mean         -0.399    -0.21     -0.523        0.73     -0.75     -0.75
## TC.mean          0.021     0.11     -0.004       -0.13      0.22      0.22
## UNEMPLOY.mean   -0.574    -0.58     -0.776        0.90     -0.89     -0.83
## LEM.mean         1.000     0.25      0.314       -0.47      0.54      0.45
## TFR.mean         0.252     1.00      0.671       -0.65      0.53      0.50
## TRUST.mean       0.314     0.67      1.000       -0.87      0.64      0.57
## NoSave.mean     -0.467    -0.65     -0.870        1.00     -0.86     -0.79
## PISA.M.12        0.542     0.53      0.637       -0.86      1.00      0.98
## PISA.V.12        0.449     0.50      0.568       -0.79      0.98      1.00
## PISA.S.12        0.516     0.55      0.684       -0.87      0.99      0.97
## S2               0.477     0.55      0.827       -0.91      0.78      0.69
## G2               0.529     0.53      0.644       -0.86      1.00      0.98
##               PISA.S.12    S2    G2
## PP.mean            0.73  0.64  0.70
## NW.mean            0.68  0.79  0.62
## SMOKE.mean        -0.22 -0.24 -0.22
## IH.mean           -0.74 -0.62 -0.75
## TC.mean            0.26  0.18  0.23
## UNEMPLOY.mean     -0.91 -0.93 -0.89
## LEM.mean           0.52  0.48  0.53
## TFR.mean           0.55  0.55  0.53
## TRUST.mean         0.68  0.83  0.64
## NoSave.mean       -0.87 -0.91 -0.86
## PISA.M.12          0.99  0.78  1.00
## PISA.V.12          0.97  0.69  0.98
## PISA.S.12          1.00  0.80  0.99
## S2                 0.80  1.00  0.78
## G2                 0.99  0.78  1.00