Speed Dating dataset (Kaggle) “What influences love at first sight?” Read about the experiment. https://www.kaggle.com/annavictoria/speed-dating-experiment
dating <-read.csv("Speed Dating Data.csv")
names(dating)
## [1] "iid" "id" "gender" "idg" "condtn" "wave"
## [7] "round" "position" "positin1" "order" "partner" "pid"
## [13] "match" "int_corr" "samerace" "age_o" "race_o" "pf_o_att"
## [19] "pf_o_sin" "pf_o_int" "pf_o_fun" "pf_o_amb" "pf_o_sha" "dec_o"
## [25] "attr_o" "sinc_o" "intel_o" "fun_o" "amb_o" "shar_o"
## [31] "like_o" "prob_o" "met_o" "age" "field" "field_cd"
## [37] "undergra" "mn_sat" "tuition" "race" "imprace" "imprelig"
## [43] "from" "zipcode" "income" "goal" "date" "go_out"
## [49] "career" "career_c" "sports" "tvsports" "exercise" "dining"
## [55] "museums" "art" "hiking" "gaming" "clubbing" "reading"
## [61] "tv" "theater" "movies" "concerts" "music" "shopping"
## [67] "yoga" "exphappy" "expnum" "attr1_1" "sinc1_1" "intel1_1"
## [73] "fun1_1" "amb1_1" "shar1_1" "attr4_1" "sinc4_1" "intel4_1"
## [79] "fun4_1" "amb4_1" "shar4_1" "attr2_1" "sinc2_1" "intel2_1"
## [85] "fun2_1" "amb2_1" "shar2_1" "attr3_1" "sinc3_1" "fun3_1"
## [91] "intel3_1" "amb3_1" "attr5_1" "sinc5_1" "intel5_1" "fun5_1"
## [97] "amb5_1" "dec" "attr" "sinc" "intel" "fun"
## [103] "amb" "shar" "like" "prob" "met" "match_es"
## [109] "attr1_s" "sinc1_s" "intel1_s" "fun1_s" "amb1_s" "shar1_s"
## [115] "attr3_s" "sinc3_s" "intel3_s" "fun3_s" "amb3_s" "satis_2"
## [121] "length" "numdat_2" "attr7_2" "sinc7_2" "intel7_2" "fun7_2"
## [127] "amb7_2" "shar7_2" "attr1_2" "sinc1_2" "intel1_2" "fun1_2"
## [133] "amb1_2" "shar1_2" "attr4_2" "sinc4_2" "intel4_2" "fun4_2"
## [139] "amb4_2" "shar4_2" "attr2_2" "sinc2_2" "intel2_2" "fun2_2"
## [145] "amb2_2" "shar2_2" "attr3_2" "sinc3_2" "intel3_2" "fun3_2"
## [151] "amb3_2" "attr5_2" "sinc5_2" "intel5_2" "fun5_2" "amb5_2"
## [157] "you_call" "them_cal" "date_3" "numdat_3" "num_in_3" "attr1_3"
## [163] "sinc1_3" "intel1_3" "fun1_3" "amb1_3" "shar1_3" "attr7_3"
## [169] "sinc7_3" "intel7_3" "fun7_3" "amb7_3" "shar7_3" "attr4_3"
## [175] "sinc4_3" "intel4_3" "fun4_3" "amb4_3" "shar4_3" "attr2_3"
## [181] "sinc2_3" "intel2_3" "fun2_3" "amb2_3" "shar2_3" "attr3_3"
## [187] "sinc3_3" "intel3_3" "fun3_3" "amb3_3" "attr5_3" "sinc5_3"
## [193] "intel5_3" "fun5_3" "amb5_3"
# Choose the variables we think belong to factors.
dating1<- dating[c("imprace","imprelig", "date", "go_out", "sports",
"tvsports", "exercise", "dining" , "museums", "art",
"hiking", "gaming", "clubbing",
"reading", "tv", "theater", "movies", "concerts",
"music", "shopping", "yoga", "exphappy" , "attr1_1",
"sinc1_1", "intel1_1", "fun1_1", "amb1_1",
"shar1_1", "attr2_1", "sinc2_1", "intel2_1",
"fun2_1", "amb2_1", "shar2_1", "attr3_1", "sinc3_1",
"intel3_1", "fun3_1", "amb3_1")]
dating1 <- as.data.frame(dating1)
dim(dating1)
## [1] 8378 39
# summary(dating1)
We have such a question: Are there latent factors which explain correlations of the observed variables?
NB:
If you have ordinal or binary variables, there are two ways:
library(polycor)
dat.cor <- hetcor(dating1)
dat.cor<- dat.cor$correlations
dating12 <- na.omit(dating1)
library(psych)
##
## Attaching package: 'psych'
## The following object is masked from 'package:polycor':
##
## polyserial
fa.parallel(dating12, fa="both", n.iter=100)
## Parallel analysis suggests that the number of factors = 15 and the number of components = 13
How many factors should be extracted? Interpret the Parallel Analysis screen plot.
Here we need to count how many crosses are above black line - that’s the N of factors, suggested by parallel analysis. We have 15. The hogher the cross - the better is explains it’s varables (higher eigenvalues).
Let’s try to use the maximum number of factors firstly.
fa(dating12, nfactors=15, rotate="none", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 15, rotate = "none", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML1 ML2 ML11 ML10 ML12 ML13 ML4 ML5 ML3 ML14 ML15
## imprace -0.06 0.01 -0.03 0.14 0.16 -0.08 0.05 0.02 0.07 0.29 -0.09
## imprelig 0.01 0.19 -0.09 0.04 0.10 0.01 0.14 -0.02 0.08 0.21 0.01
## date 0.04 0.24 -0.09 -0.04 -0.06 -0.14 -0.02 0.03 -0.08 -0.06 -0.19
## go_out 0.06 0.12 0.03 -0.01 -0.09 -0.18 -0.05 -0.11 -0.14 -0.02 -0.19
## sports 0.02 -0.23 -0.04 -0.03 0.20 0.72 -0.14 -0.06 0.00 0.11 -0.29
## tvsports 0.06 -0.14 -0.01 0.04 0.35 0.31 -0.18 -0.12 -0.03 0.26 -0.30
## exercise -0.11 -0.04 -0.05 0.12 0.12 0.39 -0.01 0.03 0.04 0.19 -0.09
## dining -0.06 0.06 0.25 0.31 0.14 0.03 0.10 0.03 0.07 0.12 0.23
## museums -0.03 0.18 0.80 0.43 -0.15 0.03 0.12 0.03 0.04 0.08 -0.04
## art -0.04 0.13 0.73 0.43 -0.10 0.01 0.07 0.03 0.06 0.00 0.00
## hiking 0.08 0.04 0.20 0.11 -0.02 0.25 -0.03 0.03 -0.06 -0.16 -0.09
## gaming 0.12 -0.17 0.00 0.05 0.28 0.00 -0.10 -0.04 0.02 0.08 -0.09
## clubbing -0.06 -0.07 0.06 0.19 0.13 0.07 -0.03 0.05 -0.02 -0.01 0.06
## reading 0.02 0.14 0.24 0.08 -0.09 -0.01 0.16 0.02 0.02 0.03 0.12
## tv 0.06 0.11 -0.01 0.14 0.51 -0.38 -0.02 -0.01 -0.02 0.54 -0.13
## theater -0.01 0.24 0.39 0.37 0.16 -0.22 0.14 0.03 -0.01 0.01 0.01
## movies 0.03 0.14 0.27 0.20 0.36 -0.26 0.08 0.01 -0.05 0.02 -0.02
## concerts 0.00 0.12 0.42 0.24 0.54 -0.04 0.04 -0.11 0.04 -0.49 -0.05
## music -0.01 0.06 0.29 0.21 0.50 0.01 0.03 -0.04 0.03 -0.36 0.10
## shopping -0.14 0.08 0.09 0.35 0.35 -0.20 0.05 0.06 -0.01 0.27 0.09
## yoga 0.00 0.12 0.20 0.20 0.10 0.06 0.06 0.00 0.05 -0.08 0.11
## exphappy 0.12 -0.20 0.13 0.01 0.17 0.18 -0.07 0.03 0.00 -0.01 0.01
## attr1_1 -0.64 -0.55 0.03 -0.03 0.00 0.00 -0.41 -0.17 0.06 0.00 0.00
## sinc1_1 0.41 0.43 0.02 -0.04 0.00 0.00 -0.04 -0.24 -0.74 0.00 0.00
## intel1_1 -0.02 0.07 0.08 -0.30 0.03 0.01 0.53 0.06 0.03 0.01 0.01
## fun1_1 0.05 -0.19 0.14 -0.24 0.00 0.00 0.18 0.58 -0.03 0.00 0.00
## amb1_1 0.25 0.21 -0.38 0.74 -0.04 0.00 0.21 0.20 0.10 -0.03 -0.02
## shar1_1 0.50 0.49 0.03 -0.04 0.00 0.00 -0.12 -0.22 0.61 0.00 0.00
## attr2_1 -0.87 0.38 -0.01 0.00 0.00 0.00 0.02 -0.20 -0.04 0.00 0.00
## sinc2_1 0.68 -0.25 0.00 0.01 0.00 0.00 -0.55 0.06 -0.17 0.00 0.00
## intel2_1 0.50 -0.61 0.00 0.02 0.00 0.00 0.48 -0.32 0.01 0.00 0.00
## fun2_1 0.05 0.05 0.01 0.02 0.01 0.00 0.21 0.73 -0.14 0.00 0.00
## amb2_1 0.36 -0.34 0.04 -0.02 0.01 -0.01 -0.03 -0.06 0.11 0.00 0.00
## shar2_1 0.53 0.26 -0.01 -0.02 0.00 0.00 -0.12 0.06 0.32 0.00 0.00
## attr3_1 -0.08 -0.20 0.03 0.22 0.12 0.29 -0.07 0.08 0.09 0.17 0.45
## sinc3_1 0.12 0.20 0.09 0.09 0.16 0.17 0.02 -0.12 -0.21 0.11 0.24
## intel3_1 0.05 -0.10 0.04 0.01 0.09 0.27 0.03 -0.04 0.14 0.20 0.41
## fun3_1 -0.08 -0.14 0.09 0.23 0.25 0.26 -0.02 0.03 0.04 0.15 0.44
## amb3_1 -0.05 -0.14 -0.11 0.39 0.20 0.21 0.00 0.01 0.13 0.11 0.28
## ML9 ML7 ML8 ML6 h2 u2 com
## imprace 0.01 0.02 0.02 -0.01 0.155 0.8451 2.9
## imprelig -0.01 0.01 0.05 -0.02 0.130 0.8702 4.4
## date 0.04 -0.03 0.01 0.02 0.144 0.8561 3.9
## go_out -0.07 -0.04 -0.04 0.00 0.138 0.8623 5.9
## sports 0.07 -0.02 -0.06 0.10 0.751 0.2491 2.0
## tvsports 0.15 -0.05 0.03 -0.04 0.478 0.5217 5.7
## exercise 0.04 0.01 -0.02 0.05 0.248 0.7518 2.5
## dining -0.04 0.13 0.02 -0.02 0.298 0.7025 4.9
## museums -0.11 0.10 0.13 -0.04 0.938 0.0616 2.0
## art -0.04 0.14 0.11 -0.05 0.790 0.2102 2.0
## hiking 0.06 0.03 -0.04 0.04 0.165 0.8350 4.5
## gaming 0.00 -0.01 -0.07 -0.04 0.156 0.8445 3.3
## clubbing 0.06 0.02 0.00 -0.06 0.085 0.9147 4.3
## reading -0.13 0.05 0.06 0.02 0.156 0.8440 5.0
## tv 0.09 0.01 0.01 -0.03 0.756 0.2445 3.3
## theater -0.04 0.18 0.06 -0.01 0.483 0.5174 4.6
## movies -0.02 0.08 0.08 -0.02 0.353 0.6471 4.3
## concerts 0.03 0.08 -0.02 0.01 0.810 0.1901 3.7
## music 0.08 0.04 -0.01 0.08 0.537 0.4629 3.3
## shopping 0.08 0.07 0.04 -0.04 0.419 0.5807 4.8
## yoga 0.08 0.08 0.04 0.01 0.147 0.8532 5.4
## exphappy 0.04 0.04 -0.02 -0.01 0.141 0.8585 4.9
## attr1_1 -0.06 0.05 -0.16 0.22 0.995 0.0050 3.4
## sinc1_1 0.00 -0.04 -0.10 0.17 0.995 0.0050 2.7
## intel1_1 -0.54 0.20 0.38 -0.34 0.979 0.0211 4.6
## fun1_1 0.69 -0.10 0.03 -0.06 0.978 0.0217 2.8
## amb1_1 0.02 -0.10 0.18 -0.09 0.943 0.0572 2.7
## shar1_1 0.01 -0.07 -0.24 -0.10 0.995 0.0051 3.8
## attr2_1 0.09 0.08 0.04 -0.18 0.995 0.0050 1.6
## sinc2_1 0.00 0.12 0.06 -0.34 0.995 0.0050 3.0
## intel2_1 0.07 0.14 -0.11 -0.03 0.995 0.0050 3.7
## fun2_1 -0.21 0.05 -0.57 0.11 0.986 0.0137 2.5
## amb2_1 -0.09 -0.79 0.24 0.19 0.986 0.0135 2.3
## shar2_1 0.03 0.35 0.27 0.57 0.992 0.0085 4.4
## attr3_1 -0.01 0.09 0.10 0.10 0.472 0.5276 4.1
## sinc3_1 0.02 0.02 -0.02 0.10 0.266 0.7345 7.7
## intel3_1 -0.11 -0.04 0.08 0.03 0.343 0.6571 3.4
## fun3_1 0.32 -0.04 0.08 0.00 0.546 0.4542 4.9
## amb3_1 0.01 -0.04 0.13 -0.01 0.398 0.6022 4.6
##
## ML1 ML2 ML11 ML10 ML12 ML13 ML4 ML5 ML3 ML14
## SS loadings 2.90 2.16 2.12 1.99 1.64 1.52 1.32 1.28 1.25 1.15
## Proportion Var 0.07 0.06 0.05 0.05 0.04 0.04 0.03 0.03 0.03 0.03
## Cumulative Var 0.07 0.13 0.18 0.24 0.28 0.32 0.35 0.38 0.42 0.44
## Proportion Explained 0.13 0.10 0.10 0.09 0.07 0.07 0.06 0.06 0.06 0.05
## Cumulative Proportion 0.13 0.23 0.32 0.41 0.49 0.56 0.62 0.67 0.73 0.78
## ML15 ML9 ML7 ML8 ML6
## SS loadings 1.11 1.07 0.98 0.85 0.79
## Proportion Var 0.03 0.03 0.03 0.02 0.02
## Cumulative Var 0.47 0.50 0.53 0.55 0.57
## Proportion Explained 0.05 0.05 0.04 0.04 0.04
## Cumulative Proportion 0.83 0.88 0.93 0.96 1.00
##
## Mean item complexity = 3.8
## Test of the hypothesis that 15 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 261 and the objective function was 1.4
##
## The root mean square of the residuals (RMSR) is 0.03
## The df corrected root mean square of the residuals is 0.05
##
## The harmonic number of observations is 8191 with the empirical chi square 11661.7 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 11459.12 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.778
## RMSEA index = 0.072 and the 90 % confidence intervals are 0.071 0.074
## BIC = 9107.3
## Fit based upon off diagonal values = 0.95
## Measures of factor score adequacy
## ML1 ML2 ML11 ML10 ML12
## Correlation of (regression) scores with factors 1 1.00 0.97 0.98 0.91
## Multiple R square of scores with factors 1 1.00 0.95 0.96 0.83
## Minimum correlation of possible factor scores 1 0.99 0.90 0.92 0.67
## ML13 ML4 ML5 ML3 ML14
## Correlation of (regression) scores with factors 0.9 1.00 1.00 1.00 0.88
## Multiple R square of scores with factors 0.8 0.99 0.99 1.00 0.78
## Minimum correlation of possible factor scores 0.6 0.99 0.98 0.99 0.57
## ML15 ML9 ML7 ML8 ML6
## Correlation of (regression) scores with factors 0.83 0.99 0.99 0.99 0.99
## Multiple R square of scores with factors 0.69 0.98 0.99 0.99 0.99
## Minimum correlation of possible factor scores 0.37 0.96 0.97 0.97 0.98
We look at those variables, where h2 (comunality) is higher. In this case these are attr1_1, attr2_1, sinc1_1, sinc2_1, shar1_1, intel2_1 - with h2 > 0.99. The model itself is not really good. First off, too many factors - hard to interpret. Then, these factors are not really great in explanation - Proportion Variance is rather low (<0.1), which is bad. AS for the Proportion Explained, difference between first and last one is not so big (0.13 and 0.04), which is not that bad (you might think), but if we look at the graph below we still see that some factors explain of one variable, which IS bad. RMSR here is 0.03, which is not so bad actually. Anyway, that’s the model withour rotation, let’s try another one. First, let’s reduce thу N of factors.
factor.plot(fa(dating12, nfactors=15, rotate="none", fm="ml"))
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
## Warning in plot.xy(xy.coords(x, y), type = type, ...): не разработанное
## pch-значение '26'
fa.diagram(fa(dating12, nfactors=15, rotate="none", fm="ml"))
fa(dating12, nfactors=5, rotate="none", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 5, rotate = "none", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML3 ML4 ML2 ML1 ML5 h2 u2 com
## imprace 0.06 0.09 -0.04 -0.03 0.24 0.073 0.9269 1.5
## imprelig 0.01 -0.05 -0.04 -0.05 0.30 0.096 0.9041 1.2
## date -0.06 -0.35 -0.06 -0.01 0.08 0.138 0.8619 1.2
## go_out 0.02 -0.31 0.01 -0.03 -0.03 0.097 0.9033 1.0
## sports -0.14 0.40 0.14 0.04 -0.12 0.214 0.7857 1.7
## tvsports -0.07 0.29 0.19 -0.07 0.11 0.143 0.8566 2.3
## exercise 0.00 0.31 -0.07 -0.03 0.06 0.105 0.8951 1.2
## dining 0.41 0.25 -0.10 -0.02 0.21 0.292 0.7077 2.4
## museums 0.91 -0.04 -0.09 -0.06 -0.13 0.853 0.1467 1.1
## art 0.90 0.01 -0.08 -0.07 -0.15 0.843 0.1574 1.1
## hiking 0.21 0.03 0.01 0.07 -0.09 0.060 0.9401 1.7
## gaming -0.02 0.21 0.14 0.09 0.11 0.085 0.9146 2.8
## clubbing 0.12 0.26 -0.04 -0.01 0.08 0.091 0.9089 1.7
## reading 0.30 -0.13 -0.06 0.01 -0.01 0.108 0.8917 1.5
## tv 0.09 0.06 0.00 -0.02 0.50 0.262 0.7383 1.1
## theater 0.61 -0.09 -0.14 -0.04 0.29 0.482 0.5176 1.6
## movies 0.38 -0.04 -0.04 -0.02 0.32 0.252 0.7481 2.0
## concerts 0.45 0.06 -0.02 -0.08 0.16 0.233 0.7671 1.4
## music 0.32 0.18 -0.02 -0.03 0.19 0.171 0.8292 2.3
## shopping 0.28 0.26 -0.16 -0.09 0.42 0.353 0.6467 3.0
## yoga 0.32 0.08 -0.03 -0.05 0.12 0.127 0.8726 1.5
## exphappy 0.07 0.26 0.13 0.12 -0.05 0.109 0.8912 2.2
## attr1_1 -0.21 0.47 -0.14 -0.31 -0.42 0.555 0.4454 3.4
## sinc1_1 0.02 -0.37 0.09 0.12 0.19 0.196 0.8040 1.9
## intel1_1 0.12 -0.26 -0.08 -0.04 -0.02 0.089 0.9106 1.7
## fun1_1 -0.05 0.15 -0.10 0.28 -0.04 0.114 0.8858 2.0
## amb1_1 0.18 -0.04 0.05 0.16 0.42 0.239 0.7606 1.7
## shar1_1 0.10 -0.31 0.26 0.09 0.24 0.245 0.7552 3.3
## attr2_1 -0.01 0.00 -0.61 -0.79 0.00 0.995 0.0049 1.9
## sinc2_1 -0.02 -0.02 0.57 0.36 -0.01 0.452 0.5481 1.7
## intel2_1 -0.01 0.10 0.52 0.32 -0.07 0.391 0.6086 1.8
## fun2_1 0.00 0.00 -0.63 0.77 0.00 0.995 0.0050 1.9
## amb2_1 -0.07 0.10 0.59 0.21 -0.11 0.419 0.5811 1.4
## shar2_1 0.15 -0.19 0.41 0.26 0.21 0.342 0.6576 3.1
## attr3_1 0.12 0.53 0.04 0.01 0.06 0.302 0.6978 1.2
## sinc3_1 0.14 0.03 0.02 0.00 0.25 0.087 0.9133 1.6
## intel3_1 0.06 0.31 0.12 0.02 0.07 0.117 0.8835 1.5
## fun3_1 0.16 0.58 0.06 -0.09 0.21 0.411 0.5893 1.5
## amb3_1 0.11 0.46 0.08 -0.05 0.25 0.296 0.7040 1.8
##
## ML3 ML4 ML2 ML1 ML5
## SS loadings 3.20 2.48 2.21 1.86 1.68
## Proportion Var 0.08 0.06 0.06 0.05 0.04
## Cumulative Var 0.08 0.15 0.20 0.25 0.29
## Proportion Explained 0.28 0.22 0.19 0.16 0.15
## Cumulative Proportion 0.28 0.50 0.69 0.85 1.00
##
## Mean item complexity = 1.8
## Test of the hypothesis that 5 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 556 and the objective function was 9.91
##
## The root mean square of the residuals (RMSR) is 0.07
## The df corrected root mean square of the residuals is 0.08
##
## The harmonic number of observations is 8191 with the empirical chi square 56272.09 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 80980.15 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.251
## RMSEA index = 0.133 and the 90 % confidence intervals are 0.132 0.134
## BIC = 75970.16
## Fit based upon off diagonal values = 0.77
## Measures of factor score adequacy
## ML3 ML4 ML2 ML1 ML5
## Correlation of (regression) scores with factors 0.96 0.88 1.00 1.00 0.85
## Multiple R square of scores with factors 0.93 0.78 0.99 1.00 0.73
## Minimum correlation of possible factor scores 0.86 0.56 0.99 0.99 0.45
factor.plot(fa(dating12, nfactors=5, rotate="none", fm="ml"))
fa.diagram(fa(dating12, nfactors=5, rotate="none", fm="ml"))
#OR
#fa1 <- fa(dating12, nfactors=5, rotate="none", fm="ml")
#print(fa1$loadings,cutoff = 0.3)
-> Not good. Next model. Now with rotation.
fa(dating12, nfactors=5, rotate="varimax", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 5, rotate = "varimax", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML3 ML2 ML4 ML5 ML1 h2 u2 com
## imprace 0.03 -0.05 0.09 0.25 0.00 0.073 0.9269 1.4
## imprelig -0.03 -0.05 -0.04 0.30 -0.04 0.096 0.9041 1.2
## date -0.07 -0.03 -0.35 0.09 -0.02 0.138 0.8619 1.2
## go_out 0.02 0.02 -0.30 -0.01 -0.06 0.097 0.9033 1.1
## sports -0.13 0.09 0.41 -0.16 0.01 0.214 0.7857 1.6
## tvsports -0.10 0.09 0.32 0.08 -0.13 0.143 0.8566 1.8
## exercise 0.00 -0.10 0.30 0.05 0.04 0.105 0.8951 1.3
## dining 0.39 -0.08 0.25 0.26 0.04 0.292 0.7077 2.7
## museums 0.92 -0.04 -0.04 0.00 -0.04 0.853 0.1467 1.0
## art 0.92 -0.04 0.01 -0.03 -0.05 0.843 0.1574 1.0
## hiking 0.22 0.06 0.03 -0.07 0.06 0.060 0.9401 1.5
## gaming -0.05 0.15 0.23 0.09 0.02 0.085 0.9146 2.2
## clubbing 0.12 -0.05 0.26 0.09 0.03 0.091 0.9089 1.8
## reading 0.30 -0.01 -0.14 0.04 0.02 0.108 0.8917 1.5
## tv 0.02 0.01 0.08 0.50 -0.03 0.262 0.7383 1.1
## theater 0.57 -0.08 -0.09 0.37 0.00 0.482 0.5176 1.8
## movies 0.34 0.00 -0.03 0.37 -0.02 0.252 0.7481 2.0
## concerts 0.42 -0.03 0.07 0.21 -0.07 0.233 0.7671 1.6
## music 0.30 -0.02 0.19 0.22 -0.02 0.171 0.8292 2.6
## shopping 0.24 -0.17 0.26 0.45 0.01 0.353 0.6467 2.5
## yoga 0.30 -0.03 0.09 0.16 -0.03 0.127 0.8726 1.8
## exphappy 0.07 0.16 0.27 -0.05 0.06 0.109 0.8912 1.9
## attr1_1 -0.13 -0.35 0.44 -0.45 -0.12 0.555 0.4454 3.2
## sinc1_1 -0.01 0.18 -0.35 0.20 0.01 0.196 0.8040 2.2
## intel1_1 0.13 -0.06 -0.26 0.01 -0.02 0.089 0.9106 1.6
## fun1_1 -0.04 0.06 0.12 -0.05 0.30 0.114 0.8858 1.5
## amb1_1 0.11 0.16 -0.02 0.44 0.08 0.239 0.7606 1.5
## shar1_1 0.04 0.31 -0.27 0.25 -0.11 0.245 0.7552 3.3
## attr2_1 0.05 -0.94 -0.05 0.02 -0.32 0.995 0.0049 1.2
## sinc2_1 -0.07 0.67 0.04 -0.03 -0.01 0.452 0.5481 1.0
## intel2_1 -0.04 0.60 0.15 -0.10 0.00 0.391 0.6086 1.2
## fun2_1 0.04 -0.10 -0.11 0.04 0.99 0.995 0.0050 1.1
## amb2_1 -0.10 0.59 0.16 -0.15 -0.13 0.419 0.5811 1.5
## shar2_1 0.09 0.52 -0.14 0.22 -0.04 0.342 0.6576 1.6
## attr3_1 0.11 0.01 0.53 0.06 0.04 0.302 0.6978 1.1
## sinc3_1 0.11 0.03 0.05 0.27 -0.02 0.087 0.9133 1.4
## intel3_1 0.04 0.09 0.32 0.06 -0.02 0.117 0.8835 1.3
## fun3_1 0.13 -0.03 0.59 0.20 -0.06 0.411 0.5893 1.4
## amb3_1 0.08 0.02 0.48 0.24 -0.05 0.296 0.7040 1.6
##
## ML3 ML2 ML4 ML5 ML1
## SS loadings 3.01 2.73 2.52 1.90 1.27
## Proportion Var 0.08 0.07 0.06 0.05 0.03
## Cumulative Var 0.08 0.15 0.21 0.26 0.29
## Proportion Explained 0.26 0.24 0.22 0.17 0.11
## Cumulative Proportion 0.26 0.50 0.72 0.89 1.00
##
## Mean item complexity = 1.6
## Test of the hypothesis that 5 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 556 and the objective function was 9.91
##
## The root mean square of the residuals (RMSR) is 0.07
## The df corrected root mean square of the residuals is 0.08
##
## The harmonic number of observations is 8191 with the empirical chi square 56272.09 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 80980.15 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.251
## RMSEA index = 0.133 and the 90 % confidence intervals are 0.132 0.134
## BIC = 75970.16
## Fit based upon off diagonal values = 0.77
## Measures of factor score adequacy
## ML3 ML2 ML4 ML5 ML1
## Correlation of (regression) scores with factors 0.96 1.00 0.88 0.85 1.00
## Multiple R square of scores with factors 0.93 0.99 0.78 0.73 0.99
## Minimum correlation of possible factor scores 0.85 0.98 0.57 0.46 0.99
factor.plot(fa(dating12, nfactors=5, rotate="varimax", fm="ml"))
fa.diagram(fa(dating12, nfactors=5, rotate="varimax", fm="ml"))
Here we see that:
#library(GPArotation)
fa(dating12, nfactors=5, rotate="oblimin", fm="ml")
## Loading required namespace: GPArotation
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 5, rotate = "oblimin", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML2 ML3 ML4 ML5 ML1 h2 u2 com
## imprace -0.08 -0.05 0.21 0.18 0.01 0.073 0.9269 2.4
## imprelig -0.12 -0.12 0.11 0.29 -0.03 0.096 0.9041 2.0
## date -0.11 -0.07 -0.27 0.23 -0.01 0.138 0.8619 2.5
## go_out -0.03 0.05 -0.28 0.13 -0.06 0.097 0.9033 1.6
## sports 0.18 -0.10 0.27 -0.31 -0.02 0.214 0.7857 2.9
## tvsports 0.11 -0.13 0.31 -0.04 -0.15 0.143 0.8566 2.2
## exercise -0.05 -0.04 0.30 -0.10 0.06 0.105 0.8951 1.4
## dining -0.06 0.29 0.37 0.11 0.06 0.292 0.7077 2.2
## museums 0.01 0.93 -0.03 -0.01 0.00 0.853 0.1467 1.0
## art 0.01 0.93 0.00 -0.06 -0.02 0.843 0.1574 1.0
## hiking 0.09 0.24 0.00 -0.08 0.05 0.060 0.9401 1.6
## gaming 0.17 -0.08 0.24 0.00 -0.01 0.085 0.9146 2.1
## clubbing -0.01 0.07 0.28 -0.05 0.04 0.091 0.9089 1.2
## reading -0.02 0.29 -0.10 0.09 0.03 0.108 0.8917 1.4
## tv -0.08 -0.14 0.32 0.44 -0.03 0.262 0.7383 2.1
## theater -0.13 0.46 0.12 0.36 0.04 0.482 0.5176 2.2
## movies -0.06 0.23 0.16 0.35 -0.01 0.252 0.7481 2.3
## concerts -0.04 0.36 0.17 0.15 -0.05 0.233 0.7671 1.9
## music -0.01 0.22 0.28 0.11 -0.01 0.171 0.8292 2.3
## shopping -0.19 0.07 0.47 0.27 0.05 0.353 0.6467 2.1
## yoga -0.03 0.25 0.16 0.10 -0.01 0.127 0.8726 2.1
## exphappy 0.22 0.07 0.21 -0.15 0.03 0.109 0.8912 3.0
## attr1_1 -0.20 -0.04 0.17 -0.65 -0.07 0.555 0.4454 1.4
## sinc1_1 0.08 -0.04 -0.22 0.36 -0.02 0.196 0.8040 1.8
## intel1_1 -0.10 0.14 -0.23 0.11 -0.01 0.089 0.9106 2.7
## fun1_1 0.13 -0.05 0.10 -0.11 0.29 0.114 0.8858 2.1
## amb1_1 0.08 -0.01 0.20 0.43 0.06 0.239 0.7606 1.5
## shar1_1 0.19 0.01 -0.13 0.40 -0.16 0.245 0.7552 2.0
## attr2_1 -0.97 0.00 -0.01 -0.07 -0.16 0.995 0.0049 1.1
## sinc2_1 0.66 -0.02 -0.01 0.05 -0.13 0.452 0.5481 1.1
## intel2_1 0.62 0.01 0.06 -0.08 -0.11 0.391 0.6086 1.1
## fun2_1 0.02 -0.01 -0.01 -0.01 1.00 0.995 0.0050 1.0
## amb2_1 0.60 -0.03 0.03 -0.12 -0.23 0.419 0.5811 1.4
## shar2_1 0.43 0.06 -0.04 0.34 -0.12 0.342 0.6576 2.1
## attr3_1 0.10 0.06 0.51 -0.19 0.03 0.302 0.6978 1.4
## sinc3_1 -0.01 0.03 0.17 0.23 -0.02 0.087 0.9133 1.9
## intel3_1 0.14 0.01 0.31 -0.07 -0.04 0.117 0.8835 1.5
## fun3_1 0.03 0.03 0.62 -0.08 -0.06 0.411 0.5893 1.1
## amb3_1 0.05 -0.03 0.54 0.02 -0.05 0.296 0.7040 1.0
##
## ML2 ML3 ML4 ML5 ML1
## SS loadings 2.69 2.72 2.59 2.16 1.28
## Proportion Var 0.07 0.07 0.07 0.06 0.03
## Cumulative Var 0.07 0.14 0.21 0.26 0.29
## Proportion Explained 0.24 0.24 0.23 0.19 0.11
## Cumulative Proportion 0.24 0.47 0.70 0.89 1.00
##
## With factor correlations of
## ML2 ML3 ML4 ML5 ML1
## ML2 1.00 -0.13 -0.06 0.09 0.04
## ML3 -0.13 1.00 0.18 0.22 0.02
## ML4 -0.06 0.18 1.00 -0.03 -0.06
## ML5 0.09 0.22 -0.03 1.00 0.09
## ML1 0.04 0.02 -0.06 0.09 1.00
##
## Mean item complexity = 1.8
## Test of the hypothesis that 5 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 556 and the objective function was 9.91
##
## The root mean square of the residuals (RMSR) is 0.07
## The df corrected root mean square of the residuals is 0.08
##
## The harmonic number of observations is 8191 with the empirical chi square 56272.09 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 80980.15 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.251
## RMSEA index = 0.133 and the 90 % confidence intervals are 0.132 0.134
## BIC = 75970.16
## Fit based upon off diagonal values = 0.77
## Measures of factor score adequacy
## ML2 ML3 ML4 ML5 ML1
## Correlation of (regression) scores with factors 1.00 0.96 0.88 0.88 1.00
## Multiple R square of scores with factors 0.99 0.93 0.78 0.77 0.99
## Minimum correlation of possible factor scores 0.99 0.85 0.56 0.54 0.99
factor.plot(fa(dating12, nfactors=5, rotate="oblimin", fm="ml"))
fa.diagram(fa(dating12, nfactors=5, rotate="oblimin", fm="ml"))
I again see that ML1 useless factor explaining only one variable… And in general the results are merely the same as in the 3rd model - Proportion Var are still below 0.1, Proportion explained is nearly the same, too (i still find the first 4 factors are good and the last one is extra, but iа i reduce the N of factors it still exist), RMSR > 0.05 (equals to 0.07). And for some reason i don’t see any arrows, shcoing the correlation between factors…
In my opinion the 3rd model here is the best. It look prettie and more interprettable than thr first (ofc, as there are much less factors), the Proportion Explained is better, than in the 2nd model and i see no reason to prefer the 4th model to the 3rd one, because there were no singinificant improvements.
I still don’t like the presence of ML1, but if I reduce the N of factors, the situation is not getting better. In contrast, it’s getting worse: more RMSR, more difference in Proportion Explained between factors, no improvements in Proportion Variance.
Increase in the N of factors didn’t help neither. So, I guess, 5 is the optimal N of factors. And it’s better to use varimax rotation.
fa(dating12, nfactors=4, rotate="varimax", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 4, rotate = "varimax", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML3 ML2 ML4 ML1 h2 u2 com
## imprace 0.07 -0.06 0.10 0.01 0.0177 0.9823 2.4
## imprelig 0.02 -0.06 0.00 -0.02 0.0048 0.9952 1.3
## date -0.07 -0.03 -0.34 -0.02 0.1204 0.8796 1.1
## go_out 0.01 0.03 -0.32 -0.07 0.1086 0.8914 1.1
## sports -0.13 0.09 0.41 0.01 0.1897 0.8103 1.3
## tvsports -0.08 0.08 0.33 -0.12 0.1360 0.8640 1.5
## exercise 0.02 -0.11 0.31 0.05 0.1129 0.8871 1.3
## dining 0.44 -0.09 0.25 0.05 0.2640 0.7360 1.7
## museums 0.90 -0.02 -0.10 -0.04 0.8206 0.1794 1.0
## art 0.89 -0.03 -0.05 -0.06 0.7944 0.2056 1.0
## hiking 0.21 0.06 0.02 0.05 0.0515 0.9485 1.3
## gaming -0.02 0.15 0.22 0.02 0.0706 0.9294 1.8
## clubbing 0.14 -0.05 0.25 0.04 0.0869 0.9131 1.7
## reading 0.30 0.00 -0.14 0.02 0.1072 0.8928 1.4
## tv 0.09 -0.01 0.09 -0.01 0.0170 0.9830 2.0
## theater 0.62 -0.08 -0.10 0.01 0.3972 0.6028 1.1
## movies 0.39 -0.01 -0.04 -0.01 0.1523 0.8477 1.0
## concerts 0.46 -0.03 0.05 -0.07 0.2178 0.7822 1.1
## music 0.34 -0.02 0.18 -0.01 0.1486 0.8514 1.5
## shopping 0.31 -0.18 0.25 0.03 0.1898 0.8102 2.6
## yoga 0.33 -0.04 0.09 -0.02 0.1204 0.8796 1.2
## exphappy 0.07 0.16 0.26 0.05 0.0994 0.9006 1.9
## attr1_1 -0.17 -0.34 0.34 -0.13 0.2739 0.7261 2.7
## sinc1_1 0.00 0.18 -0.31 0.01 0.1255 0.8745 1.6
## intel1_1 0.12 -0.06 -0.24 -0.02 0.0769 0.9231 1.6
## fun1_1 -0.05 0.06 0.13 0.30 0.1156 0.8844 1.5
## amb1_1 0.17 0.14 0.04 0.09 0.0598 0.9402 2.7
## shar1_1 0.07 0.29 -0.21 -0.11 0.1478 0.8522 2.3
## attr2_1 0.06 -0.95 -0.05 -0.29 0.9951 0.0049 1.2
## sinc2_1 -0.08 0.67 0.04 -0.03 0.4524 0.5476 1.0
## intel2_1 -0.05 0.60 0.15 -0.02 0.3827 0.6173 1.1
## fun2_1 0.04 -0.07 -0.12 0.99 0.9950 0.0050 1.0
## amb2_1 -0.13 0.58 0.16 -0.15 0.4025 0.5975 1.4
## shar2_1 0.11 0.51 -0.10 -0.05 0.2813 0.7187 1.2
## attr3_1 0.15 0.00 0.55 0.05 0.3248 0.6752 1.2
## sinc3_1 0.15 0.02 0.09 -0.01 0.0315 0.9685 1.7
## intel3_1 0.06 0.09 0.35 -0.01 0.1344 0.8656 1.2
## fun3_1 0.18 -0.05 0.63 -0.04 0.4287 0.5713 1.2
## amb3_1 0.13 0.00 0.50 -0.03 0.2694 0.7306 1.1
##
## ML3 ML2 ML4 ML1
## SS loadings 3.27 2.72 2.47 1.26
## Proportion Var 0.08 0.07 0.06 0.03
## Cumulative Var 0.08 0.15 0.22 0.25
## Proportion Explained 0.34 0.28 0.25 0.13
## Cumulative Proportion 0.34 0.62 0.87 1.00
##
## Mean item complexity = 1.5
## Test of the hypothesis that 4 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 591 and the objective function was 10.99
##
## The root mean square of the residuals (RMSR) is 0.08
## The df corrected root mean square of the residuals is 0.09
##
## The harmonic number of observations is 8191 with the empirical chi square 76549.99 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 89841.06 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.219
## RMSEA index = 0.136 and the 90 % confidence intervals are 0.135 0.137
## BIC = 84515.68
## Fit based upon off diagonal values = 0.69
## Measures of factor score adequacy
## ML3 ML2 ML4 ML1
## Correlation of (regression) scores with factors 0.96 1.00 0.88 1.00
## Multiple R square of scores with factors 0.91 0.99 0.77 0.99
## Minimum correlation of possible factor scores 0.83 0.98 0.54 0.98
factor.plot(fa(dating12, nfactors=4, rotate="varimax", fm="ml"))
fa.diagram(fa(dating12, nfactors=4, rotate="varimax", fm="ml"))
fa(dating12, nfactors=6, rotate="varimax", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 6, rotate = "varimax", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML5 ML3 ML6 ML4 ML2 ML1 h2 u2 com
## imprace 0.05 -0.05 0.18 0.06 -0.01 0.00 0.040 0.9603 1.6
## imprelig -0.01 -0.09 0.10 0.23 -0.12 -0.02 0.083 0.9169 2.4
## date -0.04 -0.08 -0.33 0.14 0.05 0.01 0.138 0.8615 1.6
## go_out 0.04 0.00 -0.33 -0.01 0.05 -0.04 0.115 0.8852 1.1
## sports -0.14 0.14 0.28 -0.10 0.14 -0.02 0.144 0.8562 2.9
## tvsports -0.08 0.11 0.24 0.04 0.16 -0.14 0.121 0.8788 3.3
## exercise 0.00 -0.08 0.30 0.01 0.06 0.03 0.098 0.9021 1.2
## dining 0.40 -0.07 0.34 0.06 -0.06 0.04 0.289 0.7114 2.1
## museums 0.91 -0.02 -0.03 -0.05 -0.09 -0.03 0.848 0.1517 1.0
## art 0.91 -0.02 -0.01 -0.07 -0.03 -0.04 0.832 0.1679 1.0
## hiking 0.22 0.06 -0.02 0.03 0.09 0.06 0.065 0.9346 1.7
## gaming -0.04 0.17 0.18 -0.03 0.06 0.01 0.069 0.9309 2.4
## clubbing 0.12 -0.03 0.24 0.01 0.06 0.03 0.079 0.9206 1.7
## reading 0.29 -0.02 -0.06 0.03 -0.17 0.02 0.117 0.8826 1.8
## tv 0.07 -0.03 0.17 0.20 0.06 0.00 0.075 0.9254 2.4
## theater 0.60 -0.10 0.03 0.12 -0.07 0.03 0.387 0.6133 1.2
## movies 0.36 -0.02 0.06 0.10 -0.06 0.00 0.150 0.8497 1.3
## concerts 0.45 -0.03 0.08 0.03 0.04 -0.06 0.211 0.7889 1.1
## music 0.32 -0.01 0.20 0.06 0.08 -0.01 0.152 0.8480 1.9
## shopping 0.27 -0.17 0.35 0.13 0.03 0.03 0.247 0.7527 2.8
## yoga 0.32 -0.04 0.13 0.11 0.02 -0.02 0.133 0.8673 1.7
## exphappy 0.06 0.19 0.19 -0.06 0.02 0.03 0.084 0.9156 2.5
## attr1_1 -0.15 -0.20 0.27 -0.85 0.34 -0.15 0.995 0.0050 1.9
## sinc1_1 0.03 0.09 -0.36 0.41 0.14 0.05 0.332 0.6682 2.4
## intel1_1 0.06 -0.07 -0.09 -0.02 -0.99 -0.07 0.995 0.0050 1.0
## fun1_1 -0.04 0.05 0.07 0.19 0.13 0.30 0.152 0.8479 2.3
## amb1_1 0.15 0.08 0.14 0.55 0.02 0.11 0.368 0.6317 1.4
## shar1_1 0.08 0.22 -0.22 0.45 0.10 -0.07 0.316 0.6837 2.2
## attr2_1 0.07 -0.94 0.03 -0.11 0.01 -0.30 0.995 0.0049 1.2
## sinc2_1 -0.07 0.66 -0.08 0.09 0.12 -0.02 0.469 0.5314 1.2
## intel2_1 -0.08 0.62 0.11 -0.03 -0.20 -0.04 0.446 0.5543 1.3
## fun2_1 0.03 -0.08 -0.05 -0.03 -0.07 0.99 0.995 0.0050 1.0
## amb2_1 -0.12 0.60 0.06 0.00 0.07 -0.15 0.407 0.5927 1.3
## shar2_1 0.11 0.47 -0.10 0.26 0.06 -0.02 0.306 0.6936 1.8
## attr3_1 0.10 0.07 0.56 -0.07 0.02 0.01 0.334 0.6664 1.1
## sinc3_1 0.13 0.00 0.12 0.23 0.04 0.00 0.085 0.9145 2.3
## intel3_1 0.02 0.12 0.39 0.02 -0.14 -0.04 0.186 0.8142 1.5
## fun3_1 0.14 0.00 0.62 0.14 0.16 -0.07 0.452 0.5477 1.4
## amb3_1 0.08 0.04 0.57 0.10 0.04 -0.06 0.346 0.6542 1.1
##
## ML5 ML3 ML6 ML4 ML2 ML1
## SS loadings 3.12 2.60 2.45 1.80 1.40 1.28
## Proportion Var 0.08 0.07 0.06 0.05 0.04 0.03
## Cumulative Var 0.08 0.15 0.21 0.26 0.29 0.32
## Proportion Explained 0.25 0.21 0.19 0.14 0.11 0.10
## Cumulative Proportion 0.25 0.45 0.65 0.79 0.90 1.00
##
## Mean item complexity = 1.7
## Test of the hypothesis that 6 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 522 and the objective function was 9.22
##
## The root mean square of the residuals (RMSR) is 0.07
## The df corrected root mean square of the residuals is 0.08
##
## The harmonic number of observations is 8191 with the empirical chi square 57758.47 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 75386.35 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.258
## RMSEA index = 0.132 and the 90 % confidence intervals are 0.132 0.133
## BIC = 70682.71
## Fit based upon off diagonal values = 0.77
## Measures of factor score adequacy
## ML5 ML3 ML6 ML4 ML2
## Correlation of (regression) scores with factors 0.96 1.00 0.88 0.99 1.00
## Multiple R square of scores with factors 0.92 0.99 0.78 0.97 0.99
## Minimum correlation of possible factor scores 0.85 0.99 0.56 0.94 0.98
## ML1
## Correlation of (regression) scores with factors 1.00
## Multiple R square of scores with factors 0.99
## Minimum correlation of possible factor scores 0.99
factor.plot(fa(dating12, nfactors=6, rotate="varimax", fm="ml"))
fa.diagram(fa(dating12, nfactors=6, rotate="varimax", fm="ml"))
Now let’s move on and try to explain what do our factors mean.
fa(dating12, nfactors=5, rotate="varimax", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 5, rotate = "varimax", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML3 ML2 ML4 ML5 ML1 h2 u2 com
## imprace 0.03 -0.05 0.09 0.25 0.00 0.073 0.9269 1.4
## imprelig -0.03 -0.05 -0.04 0.30 -0.04 0.096 0.9041 1.2
## date -0.07 -0.03 -0.35 0.09 -0.02 0.138 0.8619 1.2
## go_out 0.02 0.02 -0.30 -0.01 -0.06 0.097 0.9033 1.1
## sports -0.13 0.09 0.41 -0.16 0.01 0.214 0.7857 1.6
## tvsports -0.10 0.09 0.32 0.08 -0.13 0.143 0.8566 1.8
## exercise 0.00 -0.10 0.30 0.05 0.04 0.105 0.8951 1.3
## dining 0.39 -0.08 0.25 0.26 0.04 0.292 0.7077 2.7
## museums 0.92 -0.04 -0.04 0.00 -0.04 0.853 0.1467 1.0
## art 0.92 -0.04 0.01 -0.03 -0.05 0.843 0.1574 1.0
## hiking 0.22 0.06 0.03 -0.07 0.06 0.060 0.9401 1.5
## gaming -0.05 0.15 0.23 0.09 0.02 0.085 0.9146 2.2
## clubbing 0.12 -0.05 0.26 0.09 0.03 0.091 0.9089 1.8
## reading 0.30 -0.01 -0.14 0.04 0.02 0.108 0.8917 1.5
## tv 0.02 0.01 0.08 0.50 -0.03 0.262 0.7383 1.1
## theater 0.57 -0.08 -0.09 0.37 0.00 0.482 0.5176 1.8
## movies 0.34 0.00 -0.03 0.37 -0.02 0.252 0.7481 2.0
## concerts 0.42 -0.03 0.07 0.21 -0.07 0.233 0.7671 1.6
## music 0.30 -0.02 0.19 0.22 -0.02 0.171 0.8292 2.6
## shopping 0.24 -0.17 0.26 0.45 0.01 0.353 0.6467 2.5
## yoga 0.30 -0.03 0.09 0.16 -0.03 0.127 0.8726 1.8
## exphappy 0.07 0.16 0.27 -0.05 0.06 0.109 0.8912 1.9
## attr1_1 -0.13 -0.35 0.44 -0.45 -0.12 0.555 0.4454 3.2
## sinc1_1 -0.01 0.18 -0.35 0.20 0.01 0.196 0.8040 2.2
## intel1_1 0.13 -0.06 -0.26 0.01 -0.02 0.089 0.9106 1.6
## fun1_1 -0.04 0.06 0.12 -0.05 0.30 0.114 0.8858 1.5
## amb1_1 0.11 0.16 -0.02 0.44 0.08 0.239 0.7606 1.5
## shar1_1 0.04 0.31 -0.27 0.25 -0.11 0.245 0.7552 3.3
## attr2_1 0.05 -0.94 -0.05 0.02 -0.32 0.995 0.0049 1.2
## sinc2_1 -0.07 0.67 0.04 -0.03 -0.01 0.452 0.5481 1.0
## intel2_1 -0.04 0.60 0.15 -0.10 0.00 0.391 0.6086 1.2
## fun2_1 0.04 -0.10 -0.11 0.04 0.99 0.995 0.0050 1.1
## amb2_1 -0.10 0.59 0.16 -0.15 -0.13 0.419 0.5811 1.5
## shar2_1 0.09 0.52 -0.14 0.22 -0.04 0.342 0.6576 1.6
## attr3_1 0.11 0.01 0.53 0.06 0.04 0.302 0.6978 1.1
## sinc3_1 0.11 0.03 0.05 0.27 -0.02 0.087 0.9133 1.4
## intel3_1 0.04 0.09 0.32 0.06 -0.02 0.117 0.8835 1.3
## fun3_1 0.13 -0.03 0.59 0.20 -0.06 0.411 0.5893 1.4
## amb3_1 0.08 0.02 0.48 0.24 -0.05 0.296 0.7040 1.6
##
## ML3 ML2 ML4 ML5 ML1
## SS loadings 3.01 2.73 2.52 1.90 1.27
## Proportion Var 0.08 0.07 0.06 0.05 0.03
## Cumulative Var 0.08 0.15 0.21 0.26 0.29
## Proportion Explained 0.26 0.24 0.22 0.17 0.11
## Cumulative Proportion 0.26 0.50 0.72 0.89 1.00
##
## Mean item complexity = 1.6
## Test of the hypothesis that 5 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 556 and the objective function was 9.91
##
## The root mean square of the residuals (RMSR) is 0.07
## The df corrected root mean square of the residuals is 0.08
##
## The harmonic number of observations is 8191 with the empirical chi square 56272.09 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 80980.15 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.251
## RMSEA index = 0.133 and the 90 % confidence intervals are 0.132 0.134
## BIC = 75970.16
## Fit based upon off diagonal values = 0.77
## Measures of factor score adequacy
## ML3 ML2 ML4 ML5 ML1
## Correlation of (regression) scores with factors 0.96 1.00 0.88 0.85 1.00
## Multiple R square of scores with factors 0.93 0.99 0.78 0.73 0.99
## Minimum correlation of possible factor scores 0.85 0.98 0.57 0.46 0.99
factor.plot(fa(dating12, nfactors=5, rotate="varimax", fm="ml"))
fa.diagram(fa(dating12, nfactors=5, rotate="varimax", fm="ml"))
First factor, ML3, seems to gather hobbies of a respondent: museums, art, theater, concerts, dining, music, yoga, reading, hiking. Interesting thing is that here most of the hobbies are kinda “intelligent”. Suh things like shopping and clubbing fell to other factors.
The second one, ML2, collects answers to the question “What do you think the opposite sex looks for in a date?”: attractive, sincere, intelligent, ambitious, has shared interests/hobbies. Also suddenly shar1_1 is here, too (which is answer “has shared interests/hobbies” to close question “what you look for in the opposite sex”)
Next, ML4, this factors explains a mix of: answers to the question “How do you think you measure up?” (fun, attractive, ambitious, intellingent), active hobbies (sport, excercise, tvsports)and how often reaspondent goes for a date. Maybe it’s a piece, where is explained how active people evaluate themselves and their date-activity?
likes tv, shopping, movies; looking for attractive and ambitious - that’s the character, that is described by the 4th factor, ML5;
the last factor, ML1, explains only 2 variables (according to the graph): it unites people, who look for a fun person on a date and expect, that the opposite sex on a date is looking for fun, too. If we look closer to the table we would also notice, that there also fit respondents, who expect, that the opposite sex on a date is looking for attractiveness.
Following the advice of my friend, I’ve decided also to try out less factors. Here’s the version with 3 factors:
And here factors just divided on that, explaining hobbies, and another, explaining what respondent expect from the opposite sex to look for on a date.
fa(dating12, nfactors=3, rotate="varimax", fm="ml")
## Factor Analysis using method = ml
## Call: fa(r = dating12, nfactors = 3, rotate = "varimax", fm = "ml")
## Standardized loadings (pattern matrix) based upon correlation matrix
## ML3 ML2 ML1 h2 u2 com
## imprace 0.07 -0.04 0.01 0.0061 0.9939 1.7
## imprelig 0.02 -0.06 0.02 0.0047 0.9953 1.3
## date -0.05 -0.06 -0.03 0.0070 0.9930 2.3
## go_out 0.02 0.00 0.03 0.0014 0.9986 1.9
## sports -0.15 0.11 0.04 0.0379 0.9621 2.0
## tvsports -0.10 0.10 0.16 0.0444 0.9556 2.4
## exercise 0.01 -0.08 -0.02 0.0061 0.9939 1.1
## dining 0.42 -0.04 -0.02 0.1805 0.8195 1.0
## museums 0.90 0.02 0.05 0.8206 0.1794 1.0
## art 0.89 0.02 0.07 0.8022 0.1978 1.0
## hiking 0.21 0.08 -0.04 0.0514 0.9486 1.4
## gaming -0.04 0.17 0.01 0.0295 0.9705 1.1
## clubbing 0.13 -0.02 -0.01 0.0170 0.9830 1.1
## reading 0.30 0.01 -0.03 0.0917 0.9083 1.0
## tv 0.08 0.00 0.02 0.0075 0.9925 1.2
## theater 0.62 -0.05 -0.01 0.3881 0.6119 1.0
## movies 0.39 0.01 0.02 0.1490 0.8510 1.0
## concerts 0.45 0.00 0.08 0.2124 0.7876 1.1
## music 0.33 0.01 0.04 0.1085 0.8915 1.0
## shopping 0.30 -0.14 0.00 0.1078 0.8922 1.4
## yoga 0.33 -0.01 0.04 0.1075 0.8925 1.0
## exphappy 0.05 0.19 -0.02 0.0372 0.9628 1.1
## attr1_1 -0.16 -0.32 0.16 0.1540 0.8460 2.0
## sinc1_1 0.00 0.15 -0.04 0.0247 0.9753 1.2
## intel1_1 0.13 -0.07 0.00 0.0224 0.9776 1.6
## fun1_1 -0.05 0.08 -0.29 0.0907 0.9093 1.2
## amb1_1 0.15 0.16 -0.08 0.0554 0.9446 2.5
## shar1_1 0.06 0.28 0.09 0.0869 0.9131 1.3
## attr2_1 0.11 -0.95 0.28 0.9951 0.0049 1.2
## sinc2_1 -0.12 0.66 0.04 0.4518 0.5482 1.1
## intel2_1 -0.09 0.60 0.05 0.3750 0.6250 1.1
## fun2_1 0.07 -0.05 -0.99 0.9950 0.0050 1.0
## amb2_1 -0.17 0.58 0.17 0.3958 0.6042 1.3
## shar2_1 0.08 0.50 0.04 0.2594 0.7406 1.1
## attr3_1 0.11 0.06 0.02 0.0167 0.9833 1.6
## sinc3_1 0.14 0.04 0.02 0.0215 0.9785 1.2
## intel3_1 0.04 0.12 0.06 0.0185 0.9815 1.6
## fun3_1 0.14 0.01 0.12 0.0348 0.9652 2.0
## amb3_1 0.10 0.05 0.09 0.0213 0.9787 2.5
##
## ML3 ML2 ML1
## SS loadings 3.25 2.69 1.30
## Proportion Var 0.08 0.07 0.03
## Cumulative Var 0.08 0.15 0.19
## Proportion Explained 0.45 0.37 0.18
## Cumulative Proportion 0.45 0.82 1.00
##
## Mean item complexity = 1.4
## Test of the hypothesis that 3 factors are sufficient.
##
## The degrees of freedom for the null model are 741 and the objective function was 17.61 with Chi Square of 143979.6
## The degrees of freedom for the model are 627 and the objective function was 12.44
##
## The root mean square of the residuals (RMSR) is 0.1
## The df corrected root mean square of the residuals is 0.11
##
## The harmonic number of observations is 8191 with the empirical chi square 123002.3 with prob < 0
## The total number of observations was 8191 with Likelihood Chi Square = 101687.7 with prob < 0
##
## Tucker Lewis Index of factoring reliability = 0.166
## RMSEA index = 0.14 and the 90 % confidence intervals are 0.14 0.141
## BIC = 96037.94
## Fit based upon off diagonal values = 0.51
## Measures of factor score adequacy
## ML3 ML2 ML1
## Correlation of (regression) scores with factors 0.96 1.00 1.00
## Multiple R square of scores with factors 0.92 0.99 0.99
## Minimum correlation of possible factor scores 0.83 0.99 0.99
factor.plot(fa(dating12, nfactors=3, rotate="varimax", fm="ml"))
fa.diagram(fa(dating12, nfactors=3, rotate="varimax", fm="ml"))