library(haven)
GSS <- read_sav("/Users/loweticjustice/Desktop/New/GSS7216_R4.sav")

library(car)
## Loading required package: carData
library(stargazer)
## 
## Please cite as:
##  Hlavac, Marek (2018). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2.2. https://CRAN.R-project.org/package=stargazer
library(survey)
## Loading required package: grid
## Loading required package: Matrix
## Loading required package: survival
## 
## Attaching package: 'survey'
## The following object is masked from 'package:graphics':
## 
##     dotchart
library(ggplot2)
library(pander)
library(knitr)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following object is masked from 'package:car':
## 
##     recode
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(psych)
## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
## The following object is masked from 'package:car':
## 
##     logit
library(lme4) 
library(lmerTest) 
## 
## Attaching package: 'lmerTest'
## The following object is masked from 'package:lme4':
## 
##     lmer
## The following object is masked from 'package:stats':
## 
##     step
library(arm)
## Loading required package: MASS
## 
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
## 
## arm (Version 1.10-1, built: 2018-4-12)
## Working directory is /Users/loweticjustice/Library/Mobile Documents/com~apple~CloudDocs/Desktop
## 
## Attaching package: 'arm'
## The following objects are masked from 'package:psych':
## 
##     logit, rescale, sim
## The following object is masked from 'package:car':
## 
##     logit
library(questionr)
## 
## Attaching package: 'questionr'
## The following object is masked from 'package:psych':
## 
##     describe
GSS$age<-cut(GSS$AGE, breaks=c(0,24,39,59,79,99))

#Church Attendence and Religion
GSS$attend<-Recode(GSS$ATTEND,recodes="6:8='Very Frequent Church Attendee';0:2='Infequent Church Attendee'; 3:5='Frequent Church Attendee'; else=NA",as.factor=T)
GSS$relig<-Recode(GSS$CONCLERG,recodes="1='Strong'; 2='Moderate';3='Low'; else=NA", as.factor=T)

#Race
GSS$race<-Recode(GSS$RACE,recodes=" 2='Blacks'; 1='Whites'; else=NA", as.factor=T)
GSS$race<-relevel(GSS$race,ref="Blacks")

GSS$black<-Recode(GSS$RACE,recodes="2='1'; else=0", as.factor=T)
GSS$black<-Recode(GSS$RACE,recodes="2='black'; else=NA", as.factor=T)


#Sex
GSS$sex<-Recode(GSS$SEX,recodes="1='Male'; 2='Female'; else=NA", as.factor=T)
GSS$sex<-relevel(GSS$sex,ref="Male")


#Year in clusters
GSS$year<-Recode(GSS$YEAR, recodes="1972:1979='1972:1979'; 1980:1989='1980:1989'; 1990:1999='1990:1999';2000:2009='2000:2009';2010:2016='2010:2016';else=NA", as.factor=T)
GSS$year<-relevel(GSS$year,ref="1972:1979")

#Region
GSS$region1<-Recode(GSS$REG16,recodes="1='New England';2='Middle Atlantic';3:4='North Central';5:7='South';8='Mountain';9='Pacific';else=NA", as.factor=T)
GSS$region1<-relevel(GSS$region1,ref="New England")
GSS$region2<-Recode(GSS$REG16,recodes="5:7='South';0=NA;else='Other Regions'", as.factor=T)
GSS$region2<-relevel(GSS$region2,ref="Other Regions")
GSS$south<-Recode(GSS$REG16,recodes="5:7='South';1:4='North';else=NA", as.factor=T)
GSS$south<-relevel(GSS$south,ref="South")

#Resdential
GSS$resi<-Recode(GSS$RES16,recodes="1:3='Rural';4:6='Urban';else=NA", as.factor=T)
GSS$resi<-relevel(GSS$resi,ref="Urban")

#Education
GSS$educn<-Recode(GSS$DEGREE,recodes="0:1='HS or Less';2:4='Higher Education';else=NA", as.factor=T)
GSS$educn<-relevel(GSS$educn,ref="Higher Education")

#Education
GSS$educ<-Recode(GSS$DEGREE,recodes="0:1=0;2:4=1;else=NA", as.factor=T)


#Familiy
GSS$nchld<-Recode(GSS$CHILDS,recodes="0 = 'No child';2='Less than 2'; 3:8='3 or More'; else=NA", as.factor=T)
GSS$nchld<-relevel(GSS$nchld,ref="Less than 2")
GSS$marst<-Recode(GSS$MARITAL,recodes="1='Married'; 2='Widowed';3='Divorced';4='Seperated';5='Never Married'; else=NA", as.factor=T)
GSS$marst<-relevel(GSS$marst,ref="Married")

GSS$trust<-Recode(GSS$TRUST,recodes="1 = 'Trust';2='No Trust'; else=NA", as.factor=T)
GSS$trust<-relevel(GSS$trust,ref="Trust")

GSS$cohort<-Recode(GSS$COHORT, recodes="1883:1927='Greatest Gen'; 1928:1945='Silent'; 1946:1964='Boomers';1965:1980='Generation X';1981:1996='Millennials';else=NA", as.factor=T)
GSS$cohort<-relevel(GSS$cohort,ref="Millennials")
GSS$cohorts<-Recode(GSS$COHORT, recodes="1883:1927=1;1928:1945=2;1946:1964=3;1965:1980=4;1981:1996=5;else=NA")

GSS$bgens<-ifelse((GSS$RACE==2)&(GSS$cohorts==1), "1", 
ifelse((GSS$RACE==2)&(GSS$cohorts==2),"2",    
ifelse((GSS$RACE==2)&(GSS$cohorts==3),"3",                                                        ifelse((GSS$RACE==2)&(GSS$cohorts==4),"4",
ifelse((GSS$RACE==2)&(GSS$cohorts==5),"5",NA)))))

GSS$bgens1<-Recode(GSS$bgens,recodes="'1'='Greatest Gen';'2'='Silent Gen';'3'='Boomers';'4'='Generation X';'5'='Millennials';else=NA",as.factor=T)
GSS$bgen<-relevel(GSS$bgens1,ref="Greatest Gen")

summary(GSS$bgen)
## Greatest Gen      Boomers Generation X  Millennials   Silent Gen 
##         1304         3411         1702          619         1704 
##         NA's 
##        53726
table(GSS$bgen,GSS$year)
##               
##                1972:1979 1980:1989 1990:1999 2000:2009 2010:2016
##   Greatest Gen       505       517       201        72         9
##   Boomers            346      1001       759       811       494
##   Generation X         0       109       410       760       423
##   Millennials          0         0         0       197       422
##   Silent Gen         385       557       356       280       126
GSS$abtdefect<-Recode(GSS$ABDEFECT,recodes="1=1; 2=0; else=NA")
GSS$abtnomore<-Recode(GSS$ABNOMORE,recodes="1=1; 2=0; else=NA")
GSS$abtpoor<-Recode(GSS$ABPOOR,recodes="1=1; 2=0; else=NA")
GSS$abtrape<-Recode(GSS$ABRAPE,recodes="1=1; 2=0; else=NA")
GSS$abtsing<-Recode(GSS$ABSINGLE,recodes="1=1; 2=0; else=NA")
GSS$abthlth<-Recode(GSS$ABHLTH,recodes="1=1; 2=0; else=NA")

GSS$abscald <- scale(GSS$abtdefect)+scale(GSS$abtnomore)+scale(GSS$abtpoor)+scale(GSS$abtrape)+scale(GSS$abtsing)+scale(GSS$abthlth)
summary(GSS$abscald)
##        V1        
##  Min.   :-9.739  
##  1st Qu.:-1.879  
##  Median : 0.609  
##  Mean   : 0.151  
##  3rd Qu.: 4.627  
##  Max.   : 4.627  
##  NA's   :23793
fit.an<-lm(abscald~as.factor(YEAR),GSS)
anova(fit.an)
## Analysis of Variance Table
## 
## Response: abscald
##                    Df Sum Sq Mean Sq F value    Pr(>F)    
## as.factor(YEAR)    29   4722 162.825  7.7149 < 2.2e-16 ***
## Residuals       38643 815567  21.105                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
library(lme4) 
library(lmerTest) 
library(arm)
fit<-lmer(abscald~(1|YEAR), data=GSS)
arm::display(fit, detail=T)
## lmer(formula = abscald ~ (1 | YEAR), data = GSS)
##             coef.est coef.se t value
## (Intercept) 0.15     0.07    2.34   
## 
## Error terms:
##  Groups   Name        Std.Dev.
##  YEAR     (Intercept) 0.33    
##  Residual             4.59    
## ---
## number of obs: 38673, groups: YEAR, 30
## AIC = 227753, DIC = 227739.5
## deviance = 227743.1
yearlymeans<-aggregate(cbind(abscald)~YEAR,GSS,mean)
head(yearlymeans,n=40)
##    YEAR          V1
## 1  1972 -0.07576717
## 2  1973  0.66063573
## 3  1974  0.80742543
## 4  1975  0.57686615
## 5  1976  0.58085070
## 6  1977  0.61979604
## 7  1978  0.10691514
## 8  1980  0.55143642
## 9  1982  0.37560855
## 10 1983 -0.11345876
## 11 1984  0.08055414
## 12 1985 -0.12367390
## 13 1987 -0.20262923
## 14 1988 -0.21745744
## 15 1989  0.29832077
## 16 1990  0.47716396
## 17 1991  0.49642675
## 18 1993  0.42645636
## 19 1994  0.52444695
## 20 1996  0.38358640
## 21 1998 -0.11685582
## 22 2000 -0.17850767
## 23 2002 -0.02298488
## 24 2004 -0.54928191
## 25 2006 -0.37904977
## 26 2008 -0.17243380
## 27 2010 -0.04434274
## 28 2012 -0.08974328
## 29 2014 -0.05702656
## 30 2016 -0.04499413

Its better to see in plot:

plot(yearlymeans)

**What happened in the previous decade that incited abortion attitudes? Need to find in the literature.

Here is the actual multimodel:

multilevel<-lmer(abscald~bgen*sex*educ+(1|YEAR), 
            data=GSS,  na.action=na.omit)

arm::display(multilevel, detail=T)
## lmer(formula = abscald ~ bgen * sex * educ + (1 | YEAR), data = GSS, 
##     na.action = na.omit)
##                                  coef.est coef.se t value
## (Intercept)                      -2.42     0.27   -8.92  
## bgenBoomers                       2.12     0.31    6.76  
## bgenGeneration X                  1.73     0.39    4.41  
## bgenMillennials                   2.57     0.54    4.72  
## bgenSilent Gen                    1.58     0.34    4.60  
## sexFemale                        -0.97     0.32   -3.03  
## educ1                             4.33     0.98    4.41  
## bgenBoomers:sexFemale             0.85     0.40    2.15  
## bgenGeneration X:sexFemale        1.41     0.48    2.93  
## bgenMillennials:sexFemale        -0.18     0.67   -0.27  
## bgenSilent Gen:sexFemale          0.84     0.44    1.91  
## bgenBoomers:educ1                -3.80     1.06   -3.58  
## bgenGeneration X:educ1           -2.13     1.20   -1.78  
## bgenMillennials:educ1            -3.23     1.53   -2.11  
## bgenSilent Gen:educ1             -2.39     1.15   -2.08  
## sexFemale:educ1                  -3.69     1.31   -2.81  
## bgenBoomers:sexFemale:educ1       4.84     1.41    3.44  
## bgenGeneration X:sexFemale:educ1  2.63     1.55    1.70  
## bgenMillennials:sexFemale:educ1   5.51     1.96    2.81  
## bgenSilent Gen:sexFemale:educ1    3.82     1.53    2.50  
## 
## Error terms:
##  Groups   Name        Std.Dev.
##  YEAR     (Intercept) 0.47    
##  Residual             4.55    
## ---
## number of obs: 5262, groups: YEAR, 30
## AIC = 30933.2, DIC = 30886.4
## deviance = 30887.8

Variation is significantly represented across all predictors with exception of select marriage categories (seperated and widowed)

 summary(multilevel)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: abscald ~ bgen * sex * educ + (1 | YEAR)
##    Data: GSS
## 
## REML criterion at convergence: 30889.2
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.56579 -0.71240  0.04303  0.87171  1.90000 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  YEAR     (Intercept)  0.2191  0.4681  
##  Residual             20.7005  4.5498  
## Number of obs: 5262, groups:  YEAR, 30
## 
## Fixed effects:
##                                   Estimate Std. Error        df t value
## (Intercept)                        -2.4198     0.2711  601.1184  -8.924
## bgenBoomers                         2.1237     0.3144 4781.4751   6.756
## bgenGeneration X                    1.7323     0.3927 3540.0643   4.412
## bgenMillennials                     2.5695     0.5444 3536.9851   4.720
## bgenSilent Gen                      1.5826     0.3439 5217.2411   4.602
## sexFemale                          -0.9745     0.3215 5240.5656  -3.032
## educ1                               4.3325     0.9835 5231.9370   4.405
## bgenBoomers:sexFemale               0.8492     0.3954 5231.2617   2.148
## bgenGeneration X:sexFemale          1.4149     0.4831 5232.5020   2.929
## bgenMillennials:sexFemale          -0.1813     0.6691 5232.5093  -0.271
## bgenSilent Gen:sexFemale            0.8413     0.4414 5230.4377   1.906
## bgenBoomers:educ1                  -3.8005     1.0630 5231.4406  -3.575
## bgenGeneration X:educ1             -2.1348     1.1976 5233.5217  -1.783
## bgenMillennials:educ1              -3.2271     1.5263 5222.6015  -2.114
## bgenSilent Gen:educ1               -2.3896     1.1513 5226.9021  -2.076
## sexFemale:educ1                    -3.6860     1.3131 5229.8002  -2.807
## bgenBoomers:sexFemale:educ1         4.8417     1.4074 5232.4984   3.440
## bgenGeneration X:sexFemale:educ1    2.6310     1.5492 5229.1208   1.698
## bgenMillennials:sexFemale:educ1     5.5084     1.9625 5227.6188   2.807
## bgenSilent Gen:sexFemale:educ1      3.8183     1.5260 5229.2263   2.502
##                                  Pr(>|t|)    
## (Intercept)                       < 2e-16 ***
## bgenBoomers                      1.59e-11 ***
## bgenGeneration X                 1.06e-05 ***
## bgenMillennials                  2.45e-06 ***
## bgenSilent Gen                   4.28e-06 ***
## sexFemale                        0.002445 ** 
## educ1                            1.08e-05 ***
## bgenBoomers:sexFemale            0.031799 *  
## bgenGeneration X:sexFemale       0.003418 ** 
## bgenMillennials:sexFemale        0.786423    
## bgenSilent Gen:sexFemale         0.056713 .  
## bgenBoomers:educ1                0.000353 ***
## bgenGeneration X:educ1           0.074708 .  
## bgenMillennials:educ1            0.034539 *  
## bgenSilent Gen:educ1             0.037986 *  
## sexFemale:educ1                  0.005016 ** 
## bgenBoomers:sexFemale:educ1      0.000586 ***
## bgenGeneration X:sexFemale:educ1 0.089513 .  
## bgenMillennials:sexFemale:educ1  0.005022 ** 
## bgenSilent Gen:sexFemale:educ1   0.012372 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation matrix not shown by default, as p = 20 > 12.
## Use print(x, correlation=TRUE)  or
##     vcov(x)        if you need it
arm::display(multilevel,detail=T)
## lmer(formula = abscald ~ bgen * sex * educ + (1 | YEAR), data = GSS, 
##     na.action = na.omit)
##                                  coef.est coef.se t value
## (Intercept)                      -2.42     0.27   -8.92  
## bgenBoomers                       2.12     0.31    6.76  
## bgenGeneration X                  1.73     0.39    4.41  
## bgenMillennials                   2.57     0.54    4.72  
## bgenSilent Gen                    1.58     0.34    4.60  
## sexFemale                        -0.97     0.32   -3.03  
## educ1                             4.33     0.98    4.41  
## bgenBoomers:sexFemale             0.85     0.40    2.15  
## bgenGeneration X:sexFemale        1.41     0.48    2.93  
## bgenMillennials:sexFemale        -0.18     0.67   -0.27  
## bgenSilent Gen:sexFemale          0.84     0.44    1.91  
## bgenBoomers:educ1                -3.80     1.06   -3.58  
## bgenGeneration X:educ1           -2.13     1.20   -1.78  
## bgenMillennials:educ1            -3.23     1.53   -2.11  
## bgenSilent Gen:educ1             -2.39     1.15   -2.08  
## sexFemale:educ1                  -3.69     1.31   -2.81  
## bgenBoomers:sexFemale:educ1       4.84     1.41    3.44  
## bgenGeneration X:sexFemale:educ1  2.63     1.55    1.70  
## bgenMillennials:sexFemale:educ1   5.51     1.96    2.81  
## bgenSilent Gen:sexFemale:educ1    3.82     1.53    2.50  
## 
## Error terms:
##  Groups   Name        Std.Dev.
##  YEAR     (Intercept) 0.47    
##  Residual             4.55    
## ---
## number of obs: 5262, groups: YEAR, 30
## AIC = 30933.2, DIC = 30886.4
## deviance = 30887.8
#oddsratios
exp(fixef(multilevel)[-1])
##                      bgenBoomers                 bgenGeneration X 
##                       8.36194723                       5.65352246 
##                  bgenMillennials                   bgenSilent Gen 
##                      13.05951522                       4.86744531 
##                        sexFemale                            educ1 
##                       0.37738163                      76.13134828 
##            bgenBoomers:sexFemale       bgenGeneration X:sexFemale 
##                       2.33775923                       4.11624648 
##        bgenMillennials:sexFemale         bgenSilent Gen:sexFemale 
##                       0.83418732                       2.31943837 
##                bgenBoomers:educ1           bgenGeneration X:educ1 
##                       0.02236040                       0.11826623 
##            bgenMillennials:educ1             bgenSilent Gen:educ1 
##                       0.03967324                       0.09166487 
##                  sexFemale:educ1      bgenBoomers:sexFemale:educ1 
##                       0.02507297                     126.68298574 
## bgenGeneration X:sexFemale:educ1  bgenMillennials:sexFemale:educ1 
##                      13.88765044                     246.74772786 
##   bgenSilent Gen:sexFemale:educ1 
##                      45.52724962
#CIs
exp(confint(multilevel,method="Wald"))
##                                         2.5 %       97.5 %
## .sig01                                     NA           NA
## .sigma                                     NA           NA
## (Intercept)                       0.052275510 1.513208e-01
## bgenBoomers                       4.515708699 1.548421e+01
## bgenGeneration X                  2.618737000 1.220524e+01
## bgenMillennials                   4.492635651 3.796233e+01
## bgenSilent Gen                    2.480784301 9.550215e+00
## sexFemale                         0.200981751 7.086061e-01
## educ1                            11.077651772 5.232140e+02
## bgenBoomers:sexFemale             1.076979773 5.074485e+00
## bgenGeneration X:sexFemale        1.596851783 1.061056e+01
## bgenMillennials:sexFemale         0.224779415 3.095784e+00
## bgenSilent Gen:sexFemale          0.976435509 5.509626e+00
## bgenBoomers:educ1                 0.002783671 1.796144e-01
## bgenGeneration X:educ1            0.011310386 1.236642e+00
## bgenMillennials:educ1             0.001991970 7.901554e-01
## bgenSilent Gen:educ1              0.009598197 8.754195e-01
## sexFemale:educ1                   0.001912204 3.287587e-01
## bgenBoomers:sexFemale:educ1       8.030963399 1.998338e+03
## bgenGeneration X:sexFemale:educ1  0.666715125 2.892792e+02
## bgenMillennials:sexFemale:educ1   5.269334784 1.155448e+04
## bgenSilent Gen:sexFemale:educ1    2.287488158 9.061164e+02
library(sjPlot)
## Learn more about sjPlot with 'browseVignettes("sjPlot")'.
plot_model(multilevel,facet.grid=F)