---
title: "R Notebook"
output: html_notebook
---
#### Packages


```{r}
install.packages("dplyr")
library(dplyr)
install.packages("stargazer")
library(stargazer)
install.packages("haven")
library(haven)
CMPS_2020_Youth_sample_weighted_SPSS <- CMPS_2020_Youth_sample_weighted_SPSS |>
  haven::zap_labels()


```



#### Variables for Personally Having DACA

```{r}


#### DACA Adults
CMPS_2020_primary_sample_weighted <- CMPS_2020_primary_sample_weighted %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,  # answered yes to DACA use AND selected "Me"
    Q470 == 2 ~ 0,                  # never used DACA program
    Q470 == 1 & Q471r1 != 1 ~ 0,  # used DACA but not personally
    TRUE ~ NA_real_                  # catches any missing/ambiguous responses
  ))



#### DACA Youth
CMPS_2020_Youth_sample_weighted_SPSS <- CMPS_2020_Youth_sample_weighted_SPSS %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,  # answered yes to DACA use AND selected "Me"
    Q470 == 2 ~ 0,                  # never used DACA program
    Q470 == 1 & Q471r1 != 1 ~ 0,  # used DACA but not personally
    TRUE ~ NA_real_                  # catches any missing/ambiguous responses
  ))




##### Creating daca variables exclusive to Latinos

#### DACA Adults Latino
CMPS.Latino.Adult <- CMPS.Latino.Adult %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,  # answered yes to DACA use AND selected "Me"
    Q470 == 2 ~ 0,                  # never used DACA program
    Q470 == 1 & Q471r1 != 1 ~ 0,  # used DACA but not personally
    TRUE ~ NA_real_                  # catches any missing/ambiguous responses
  ))

xtabs(~ daca_personal + Age, data = CMPS.Latino.Adult)

#### DACA Youth
CMPS_2020_Youth_sample_weighted_SPSS <- CMPS_2020_Youth_sample_weighted_SPSS %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,  # answered yes to DACA use AND selected "Me"
    Q470 == 2 ~ 0,                  # never used DACA program
    Q470 == 1 & Q471r1 != 1 ~ 0,  # used DACA but not personally
    TRUE ~ NA_real_                  # catches any missing/ambiguous responses
  ))



```





####################################################################################################
####################################################################################################
################################################### Re-Coding Youth Data ###########################
####################################################################################################
####################################################################################################


##### American Identity 

```{r}

#### Reverse Coding Priority of American Identity 
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity <- NA
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 1] <- 8
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 2] <- 7
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 3] <- 6
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 4] <- 5
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 5] <- 4
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 6] <- 3
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 7] <- 2
CMPS_2020_Youth_sample_weighted_SPSS$American.Identity[CMPS_2020_Youth_sample_weighted_SPSS$Q560r8 == 8] <- 1

table(CMPS_2020_Youth_sample_weighted_SPSS$American.Identity)

```




### Citizenship Status

```{r}
### Citizenship
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 7] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Temporary resident (5 years)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "none"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "N/A)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "illegal immigrant)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Us citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "us citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "US Born Citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "us born citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "not sure)"] <- NA
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "None of the above)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "none of the above)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural US citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural US citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "illegal immigrant)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "i am a citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born US Citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born us Citizen)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born in the US)"] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Citizenship[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 3] <- 1


#### DACA (or similar)
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 3] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 5] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 4] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Temporary resident (5 years)"] <- 1



# DACA Strict
CMPS_2020_Youth_sample_weighted_SPSS$DACA.2 <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.2[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 5] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 4] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Temporary resident (5 years)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Us citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "us citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "US Born Citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "us born citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "not sure)"] <- NA
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "None of the above)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "none of the above)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural US citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural US citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "illegal immigrant)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "i am a citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born US Citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born us Citizen)"] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$DACA.Temp[CMPS_2020_Youth_sample_weighted_SPSS$Q807r8oe == "Born in the US)"] <- 0


```



##### Control Variables #####
```{r}

### Skin Color

table(CMPS_2020_Youth_sample_weighted_SPSS$Q261)

CMPS_2020_Youth_sample_weighted_SPSS$SkinColor <- NA
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 2] <- 2
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 3] <- 3
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 4] <- 4
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 5] <- 5
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 6] <- 6
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 7] <- 7
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 8] <- 8
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 9] <- 9
CMPS_2020_Youth_sample_weighted_SPSS$SkinColor[CMPS_2020_Youth_sample_weighted_SPSS$Q261 == 10] <- 10


# Education
CMPS_2020_Youth_sample_weighted_SPSS$Education <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Education[CMPS_2020_Youth_sample_weighted_SPSS$S13 == 1] <- 1  # Grade 1-8
CMPS_2020_Youth_sample_weighted_SPSS$Education[CMPS_2020_Youth_sample_weighted_SPSS$S13 == 2] <- 2 # Some HS
CMPS_2020_Youth_sample_weighted_SPSS$Education[CMPS_2020_Youth_sample_weighted_SPSS$S13 >= 3] <- 3  # HS or GED
CMPS_2020_Youth_sample_weighted_SPSS$Education[CMPS_2020_Youth_sample_weighted_SPSS$S13 >= 4] <- 4  # Some College
table(CMPS_2020_Youth_sample_weighted_SPSS$S13)


# Type of Community
CMPS_2020_Youth_sample_weighted_SPSS$community.type <- 0
CMPS_2020_Youth_sample_weighted_SPSS$community.type[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 5 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$community.type[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 4 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$community.type[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 3 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$community.type[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 2 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$community.type[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 1 #rural area


# Large Urban Community
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community <-0
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 1 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 0 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 0 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 0 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Large.Urban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 0 #rural area

# Suburbs
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 0 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 1 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 1 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 0 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Small.Suburban.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 0 #rural area

# Small Town / City / Rural
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 0 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 0 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 0 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 1 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Small.City.Town[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 1 #rural area

# Rural Community
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 0 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 0 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 0 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 0 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Rural.Community[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 1 #rural area

### Type of Community Urban vs. Small
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 1 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 1 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 0 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 0 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Community.Large[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 0 #rural area

CMPS_2020_Youth_sample_weighted_SPSS$Community.Small <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Community.Small[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 1] <- 0 #large urban
CMPS_2020_Youth_sample_weighted_SPSS$Community.Small[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 2] <- 0 #large suburb 
CMPS_2020_Youth_sample_weighted_SPSS$Community.Small[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 3] <- 1 #small suburb
CMPS_2020_Youth_sample_weighted_SPSS$Community.Small[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 4] <- 1 #small town/city
CMPS_2020_Youth_sample_weighted_SPSS$Community.Small[CMPS_2020_Youth_sample_weighted_SPSS$Q14 == 5] <- 1 #rural area

# How you became interested in politics
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics <- 0
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics[CMPS_2020_Youth_sample_weighted_SPSS$Q30 == 1] <- 0 #pres camp
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics[CMPS_2020_Youth_sample_weighted_SPSS$Q30 == 2] <- 0 #local camp
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics[CMPS_2020_Youth_sample_weighted_SPSS$Q30 == 3] <- 1 #personal exp
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics[CMPS_2020_Youth_sample_weighted_SPSS$Q30 == 4] <- 0 #major pol event
CMPS_2020_Youth_sample_weighted_SPSS$interest.politics[CMPS_2020_Youth_sample_weighted_SPSS$Q30 == 5] <- 0 #other


## Ideology: When it comes to politics, do you think of yourself as liberal, moderate, or conservative?
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 1] <- 6 # very liberal
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 2] <- 5 # liberal
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 3] <- 4 # moderate
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 4] <- 3 # somewhat conservative
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 5] <- 2 # very conservative 
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Liberal[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 6] <- 1 # none of these


### Reject Ideology
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 5] <- 0 
CMPS_2020_Youth_sample_weighted_SPSS$Ideology.Scale.Reject[CMPS_2020_Youth_sample_weighted_SPSS$Q43 == 6] <- 1 # none of these


# Gender (female)
CMPS_2020_Youth_sample_weighted_SPSS$Gender <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Gender[CMPS_2020_Youth_sample_weighted_SPSS$S3b == 1] <- 0 # Male
CMPS_2020_Youth_sample_weighted_SPSS$Gender[CMPS_2020_Youth_sample_weighted_SPSS$S3b == 2] <- 1 # Female
CMPS_2020_Youth_sample_weighted_SPSS$Gender[CMPS_2020_Youth_sample_weighted_SPSS$S3b == 3] <- 0 # Non-binary 
CMPS_2020_Youth_sample_weighted_SPSS$Gender[CMPS_2020_Youth_sample_weighted_SPSS$S3b == 4] <- 0


# Party Identification
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1] <- "Republican"
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- "Democrat"
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3] <- "Independent"
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 4] <- "Other"

table(CMPS_2020_Youth_sample_weighted_SPSS$Party.ID)

# Party Identification (Democrat)
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 4] <- 0

# Party Identification (Strong Democrat)
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 4] <- 0

# Party Identification (Republican)
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 4] <- 0
table(CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep)


# Party Identification (Independent)
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 4] <- 0
table(CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Rep)
table(CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Dem)
table(CMPS_2020_Youth_sample_weighted_SPSS$Party.ID.Ind)


### Point Scale (Democrat)
CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 2] <- 0 # not strong rep
CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 1] <- 0 # strong rep
CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 2] <- 1 # not strong dem
CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem[CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 1] <- 2 # strong dem
table(CMPS_2020_Youth_sample_weighted_SPSS$Party.Scale.Dem)


### Creating a 7-Point Party Scale Democrats
CMPS_2020_Youth_sample_weighted_SPSS <- CMPS_2020_Youth_sample_weighted_SPSS %>% 
  mutate(Democratic.Partisanship.7P = case_when(
    CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 1 ~ 1, # Strong Republican
    CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2 & CMPS_2020_Youth_sample_weighted_SPSS$Q22 == 1 ~ 7,  # Strong Dem
    CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 1 ~ 2, # Republican
    CMPS_2020_Youth_sample_weighted_SPSS$Q23 == 1 ~ 3, # Lean Republican
    CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 3 ~ 4, # Independent
    CMPS_2020_Youth_sample_weighted_SPSS$Q23 == 3 ~ 4, # Independent
    CMPS_2020_Youth_sample_weighted_SPSS$Q23 == 2 ~ 5, # Lean Dem
    CMPS_2020_Youth_sample_weighted_SPSS$Q21 == 2 ~ 6, # Democrat
    CMPS_2020_Youth_sample_weighted_SPSS$Q23 == 88 ~ NA, # Dont know
    TRUE ~ NA_integer_
    ))


### Language of Survey
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 1] <- 1 # English
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 2] <- 2 # Spanish
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 3] <- 0  
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 4] <- 0  
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 5] <- 0  
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 6] <- 0  

### Language of Survey Spnaish
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 1] <- 0 # English
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 2] <- 1 # Spanish
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Survey.Language.Spanish[CMPS_2020_Youth_sample_weighted_SPSS$S1 == 6] <- 0 

### US Born Parents
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born <- NA
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_US_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 88] <- NA

### Immigrant Parents
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born <- NA
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 2] <- 2
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Foreign_Born[CMPS_2020_Youth_sample_weighted_SPSS$Q809 == 88] <- 0


### Mothers Education
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu <- NA
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 2] <- 2
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 3] <- 3
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 4] <- 4
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 5] <- 5
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 6] <- 6
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 7] <- 7
CMPS_2020_Youth_sample_weighted_SPSS$Mother_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q804 == 8] <- NA



### Father's Education
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu <- NA
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 2] <- 2
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 3] <- 3
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 4] <- 4
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 5] <- 5
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 6] <- 6
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 7] <- 7
CMPS_2020_Youth_sample_weighted_SPSS$Father_Edu[CMPS_2020_Youth_sample_weighted_SPSS$Q805 == 8] <- NA



### Combining Parents Education
CMPS_2020_Youth_sample_weighted_SPSS$Parent_Education <- with(
  CMPS_2020_Youth_sample_weighted_SPSS,
  pmax(Mother_Edu, Father_Edu, na.rm = TRUE)
)

```



## Seperating the Data by Primary Race***

```{r}

# Primary Race Latino
CMPS_2020_Youth_sample_weighted_SPSS$Latinx <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 2] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latinx[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 7] <- 0


# Latino, including white

CMPS_2020_Youth_sample_weighted_SPSS$Latino_White <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Latino_White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Racer2 == 1] <-1
CMPS_2020_Youth_sample_weighted_SPSS$Latino_White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Racer2 == 0] <-0

# Primary Race African American 

CMPS_2020_Youth_sample_weighted_SPSS$AfricanAmerican <- 0
CMPS_2020_Youth_sample_weighted_SPSS$AfricanAmerican[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 3] <- 1

summary(CMPS_2020_Youth_sample_weighted_SPSS$AfricanAmerican)

# Primary Race Asian

CMPS_2020_Youth_sample_weighted_SPSS$Asian <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 4] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$Asian[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 7] <- 0

summary(CMPS_2020_Youth_sample_weighted_SPSS$Asian)

# Primary Race White

CMPS_2020_Youth_sample_weighted_SPSS$White <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 1] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$White[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 7] <- 0

summary(CMPS_2020_Youth_sample_weighted_SPSS$White)


## Subset Data Frames by race for Teenagers

CMPS.Latino.Teen <- CMPS_2020_Youth_sample_weighted_SPSS[CMPS_2020_Youth_sample_weighted_SPSS$Latinx == "1",] 

CMPS.Latino.Teen.Citizens <- CMPS.Latino.Teen[CMPS.Latino.Teen$Citizenship == "1",] 

CMPS.Black.Teen <- CMPS_2020_Youth_sample_weighted_SPSS[CMPS_2020_Youth_sample_weighted_SPSS$AfricanAmerican == "1",]  

CMPS.White.Teen <- CMPS_2020_Youth_sample_weighted_SPSS[CMPS_2020_Youth_sample_weighted_SPSS$White == "1",]  

CMPS.White.Latino.Teen <- CMPS_2020_Youth_sample_weighted_SPSS[CMPS_2020_Youth_sample_weighted_SPSS$Latino_White == "1",]  

CMPS.Asian.Teen <- CMPS_2020_Youth_sample_weighted_SPSS[CMPS_2020_Youth_sample_weighted_SPSS$S2_Race_Prime == 4,]

```




####################################################################################################
####################################################################################################
################################################### Re-Coding Adult Data ###########################
####################################################################################################
####################################################################################################


#### American Identity 

```{r}

CMPS_2020_primary_sample_weighted$American.Identity <- NA
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 1] <- 8
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 2] <- 7
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 3] <- 6
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 4] <- 5
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 5] <- 4
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 6] <- 3
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 7] <- 2
CMPS_2020_primary_sample_weighted$American.Identity[CMPS_2020_primary_sample_weighted$Q560r8 == 8] <- 1

table(CMPS_2020_primary_sample_weighted$American.Identity)

```



### Personal Status
```{r}

### Citizenship
CMPS_2020_primary_sample_weighted$Citizenship <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 1] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 2] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 3] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 4] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 5] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 6] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 7] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Temporary resident (5 years)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "none"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "N/A)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "illegal immigrant)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Us citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "us citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "US Born Citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "us born citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "not sure)"] <- NA
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "None of the above)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "none of the above)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural US citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural US citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "illegal immigrant)"] <- 0
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "i am a citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born US Citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born us Citizen)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born in the US)"] <- 1
CMPS_2020_primary_sample_weighted$Citizenship[CMPS_2020_primary_sample_weighted$Q807 == 3] <- 1

#### DACA, or similar program
CMPS_2020_primary_sample_weighted$DACA.Temp <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807 == 3] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807 == 5] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807 == 4] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Temporary resident (5 years)"] <- 1


### DACA VS. Citizens and TPS

# DACA 2
CMPS_2020_primary_sample_weighted$DACA.2 <- 0
CMPS_2020_primary_sample_weighted$DACA.2[CMPS_2020_primary_sample_weighted$Q807 == 5] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807 == 4] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Temporary resident (5 years)"] <- 1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Us citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "us citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "US Born Citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "us born citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "not sure)"] <- NA
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "None of the above)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "none of the above)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural US citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural US citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Natural born citizen, parents were naturalized)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "illegal immigrant)"] <- -1
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "i am a citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born US Citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born us Citizen)"] <- 0
CMPS_2020_primary_sample_weighted$DACA.Temp[CMPS_2020_primary_sample_weighted$Q807r8oe == "Born in the US)"] <- 0


######### Legal Permanent Resident (Youth and Adults). #########

# Adults
CMPS_2020_primary_sample_weighted$LPR <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 1] <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 2] <- 1
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 3] <- 1
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 4] <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 5] <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 6] <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 7] <- 0
CMPS_2020_primary_sample_weighted$LPR[CMPS_2020_primary_sample_weighted$Q807 == 8] <- NA

# Youth
CMPS_2020_Youth_sample_weighted_SPSS$LPR <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 2] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 3] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 4] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 7] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$LPR[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 8] <- 0



######### Visa Holders (Youth and Adults) ##########

# Adult
CMPS_2020_primary_sample_weighted$visa_holder <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 1] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 2] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 3] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 4] <- 1
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 5] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 6] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 7] <- 0
CMPS_2020_primary_sample_weighted$visa_holder[CMPS_2020_primary_sample_weighted$Q807 == 8] <- 0


# Youth
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 1] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 2] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 3] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 4] <- 1
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 5] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 6] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 7] <- 0
CMPS_2020_Youth_sample_weighted_SPSS$visa_holder[CMPS_2020_Youth_sample_weighted_SPSS$Q807 == 8] <- 0


```




##### Control Variables #####
```{r}

## Skin Color
CMPS_2020_primary_sample_weighted$Skin.Color <- NA
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 1] <- 1
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 2] <- 2
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 3] <- 3
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 4] <- 4
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 5] <- 5
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 6] <- 6
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 7] <- 7
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 8] <- 8
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 9] <- 9
CMPS_2020_primary_sample_weighted$Skin.Color[CMPS_2020_primary_sample_weighted$Q261 == 10] <- 10


# Education

CMPS_2020_primary_sample_weighted$Education <- 0
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 == 1] <- 1  # Grade 1-8
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 == 2] <- 2 # Some HS
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 >= 3] <- 3  # HS or GED
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 >= 4] <- 4  # HS or GED
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 >= 5] <- 5  # HS or GED
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 >= 6] <- 6  # HS or GED
CMPS_2020_primary_sample_weighted$Education[CMPS_2020_primary_sample_weighted$S13 >= 7] <- 7  # HS or GED


# Type of Community
CMPS_2020_primary_sample_weighted$community.type <- 0
CMPS_2020_primary_sample_weighted$community.type[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 5 #large urban
CMPS_2020_primary_sample_weighted$community.type[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 4 #large suburb 
CMPS_2020_primary_sample_weighted$community.type[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 3 #small suburb
CMPS_2020_primary_sample_weighted$community.type[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 2 #small town/city
CMPS_2020_primary_sample_weighted$community.type[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 1 #rural area



# Large Urban Community
CMPS_2020_primary_sample_weighted$Large.Urban.Community <-0
CMPS_2020_primary_sample_weighted$Large.Urban.Community[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 1 #large urban
CMPS_2020_primary_sample_weighted$Large.Urban.Community[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 0 #large suburb 
CMPS_2020_primary_sample_weighted$Large.Urban.Community[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 0 #small suburb
CMPS_2020_primary_sample_weighted$Large.Urban.Community[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 0 #small town/city
CMPS_2020_primary_sample_weighted$Large.Urban.Community[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 0 #rural area

# Suburbs
CMPS_2020_primary_sample_weighted$Small.Suburban.Community <- 0
CMPS_2020_primary_sample_weighted$Small.Suburban.Community[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 0 #large urban
CMPS_2020_primary_sample_weighted$Small.Suburban.Community[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 1 #large suburb 
CMPS_2020_primary_sample_weighted$Small.Suburban.Community[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 1 #small suburb
CMPS_2020_primary_sample_weighted$Small.Suburban.Community[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 0 #small town/city
CMPS_2020_primary_sample_weighted$Small.Suburban.Community[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 0 #rural area

# Small Town / City / Rural
CMPS_2020_primary_sample_weighted$Small.City.Town <- 0
CMPS_2020_primary_sample_weighted$Small.City.Town[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 0 #large urban
CMPS_2020_primary_sample_weighted$Small.City.Town[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 0 #large suburb 
CMPS_2020_primary_sample_weighted$Small.City.Town[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 0 #small suburb
CMPS_2020_primary_sample_weighted$Small.City.Town[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 1 #small town/city
CMPS_2020_primary_sample_weighted$Small.City.Town[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 1 #rural area

# Rural Community
CMPS_2020_primary_sample_weighted$Rural.Community <- 0
CMPS_2020_primary_sample_weighted$Rural.Community[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 0 #large urban
CMPS_2020_primary_sample_weighted$Rural.Community[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 0 #large suburb 
CMPS_2020_primary_sample_weighted$Rural.Community[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 0 #small suburb
CMPS_2020_primary_sample_weighted$Rural.Community[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 0 #small town/city
CMPS_2020_primary_sample_weighted$Rural.Community[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 1 #rural area

### Type of Community Urban vs. Small
CMPS_2020_primary_sample_weighted$Community.Large <- 0
CMPS_2020_primary_sample_weighted$Community.Large[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 1 #large urban
CMPS_2020_primary_sample_weighted$Community.Large[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 1 #large suburb 
CMPS_2020_primary_sample_weighted$Community.Large[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 0 #small suburb
CMPS_2020_primary_sample_weighted$Community.Large[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 0 #small town/city
CMPS_2020_primary_sample_weighted$Community.Large[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 0 #rural area

CMPS_2020_primary_sample_weighted$Community.Small <- 0
CMPS_2020_primary_sample_weighted$Community.Small[CMPS_2020_primary_sample_weighted$Q14 == 1] <- 0 #large urban
CMPS_2020_primary_sample_weighted$Community.Small[CMPS_2020_primary_sample_weighted$Q14 == 2] <- 0 #large suburb 
CMPS_2020_primary_sample_weighted$Community.Small[CMPS_2020_primary_sample_weighted$Q14 == 3] <- 1 #small suburb
CMPS_2020_primary_sample_weighted$Community.Small[CMPS_2020_primary_sample_weighted$Q14 == 4] <- 1 #small town/city
CMPS_2020_primary_sample_weighted$Community.Small[CMPS_2020_primary_sample_weighted$Q14 == 5] <- 1 #rural area

# How you became interested in politics
CMPS_2020_primary_sample_weighted$interest.politics <- 0
CMPS_2020_primary_sample_weighted$interest.politics[CMPS_2020_primary_sample_weighted$Q30 == 1] <- 0 #pres camp
CMPS_2020_primary_sample_weighted$interest.politics[CMPS_2020_primary_sample_weighted$Q30 == 2] <- 0 #local camp
CMPS_2020_primary_sample_weighted$interest.politics[CMPS_2020_primary_sample_weighted$Q30 == 3] <- 1 #personal exp
CMPS_2020_primary_sample_weighted$interest.politics[CMPS_2020_primary_sample_weighted$Q30 == 4] <- 0 #major pol event
CMPS_2020_primary_sample_weighted$interest.politics[CMPS_2020_primary_sample_weighted$Q30 == 5] <- 0 #other


## Ideology: When it comes to politics, do you think of yourself as liberal, moderate, or conservative?
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 1] <- 6 # very liberal
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 2] <- 5 # liberal
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 3] <- 4 # moderate
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 4] <- 3 # somewhat conservative
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 5] <- 2 # very conservative 
CMPS_2020_primary_sample_weighted$Ideology.Scale.Liberal[CMPS_2020_primary_sample_weighted$Q43 == 6] <- 1 # none of these


### Reject Ideology
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 1] <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 2] <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 3] <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 4] <- 0
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 5] <- 0 
CMPS_2020_primary_sample_weighted$Ideology.Scale.Reject[CMPS_2020_primary_sample_weighted$Q43 == 6] <- 1 # none of these


# Gender (female)
CMPS_2020_primary_sample_weighted$Gender <- 0
CMPS_2020_primary_sample_weighted$Gender[CMPS_2020_primary_sample_weighted$S3b == 1] <- 0 # Male
CMPS_2020_primary_sample_weighted$Gender[CMPS_2020_primary_sample_weighted$S3b == 2] <- 1 # Female
CMPS_2020_primary_sample_weighted$Gender[CMPS_2020_primary_sample_weighted$S3b == 3] <- NA # Non-binary 
CMPS_2020_primary_sample_weighted$Gender[CMPS_2020_primary_sample_weighted$S3b == 4] <- NA


# Party Identification
CMPS_2020_primary_sample_weighted$Party.ID <- NA
CMPS_2020_primary_sample_weighted$Party.ID[CMPS_2020_primary_sample_weighted$Q21 == 1] <- "Republican"
CMPS_2020_primary_sample_weighted$Party.ID[CMPS_2020_primary_sample_weighted$Q21 == 2] <- "Democrat"
CMPS_2020_primary_sample_weighted$Party.ID[CMPS_2020_primary_sample_weighted$Q21 == 3] <- "Independent"
CMPS_2020_primary_sample_weighted$Party.ID[CMPS_2020_primary_sample_weighted$Q21 == 4] <- "Other"

# Party Identification (Democrat)
CMPS_2020_primary_sample_weighted$Party.ID.Dem <- NA
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 1] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 2] <- 1
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 3] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 4] <- 0

# Party Identification (Strong Democrat)
CMPS_2020_primary_sample_weighted$Party.ID.Dem <- NA
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 1] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 2] <- 1
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 2] <- 1
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 3] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Dem[CMPS_2020_primary_sample_weighted$Q21 == 4] <- 0

# Party Identification (Republican)
CMPS_2020_primary_sample_weighted$Party.ID.Rep <- NA
CMPS_2020_primary_sample_weighted$Party.ID.Rep[CMPS_2020_primary_sample_weighted$Q21 == 1] <- 1
CMPS_2020_primary_sample_weighted$Party.ID.Rep[CMPS_2020_primary_sample_weighted$Q21 == 2] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Rep[CMPS_2020_primary_sample_weighted$Q21 == 3] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Rep[CMPS_2020_primary_sample_weighted$Q21 == 4] <- 0
table(CMPS_2020_primary_sample_weighted$Party.ID.Rep)


# Party Identification (Independent)
CMPS_2020_primary_sample_weighted$Party.ID.Ind <- NA
CMPS_2020_primary_sample_weighted$Party.ID.Ind[CMPS_2020_primary_sample_weighted$Q21 == 1] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Ind[CMPS_2020_primary_sample_weighted$Q21 == 2] <- 0
CMPS_2020_primary_sample_weighted$Party.ID.Ind[CMPS_2020_primary_sample_weighted$Q21 == 3] <- 1
CMPS_2020_primary_sample_weighted$Party.ID.Ind[CMPS_2020_primary_sample_weighted$Q21 == 4] <- 0
table(CMPS_2020_primary_sample_weighted$Party.ID.Rep)
table(CMPS_2020_primary_sample_weighted$Party.ID.Dem)
table(CMPS_2020_primary_sample_weighted$Party.ID.Ind)

### Point Scale (Democrat)
CMPS_2020_primary_sample_weighted$Party.Scale.Dem <- NA
CMPS_2020_primary_sample_weighted$Party.Scale.Dem[CMPS_2020_primary_sample_weighted$Q21 == 1 & CMPS_2020_primary_sample_weighted$Q22 == 2] <- 0 # not strong rep
CMPS_2020_primary_sample_weighted$Party.Scale.Dem[CMPS_2020_primary_sample_weighted$Q21 == 1 & CMPS_2020_primary_sample_weighted$Q22 == 1] <- 0 # strong rep
CMPS_2020_primary_sample_weighted$Party.Scale.Dem[CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 2] <- 1 # not strong dem
CMPS_2020_primary_sample_weighted$Party.Scale.Dem[CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 1] <- 2 # strong dem
table(CMPS_2020_primary_sample_weighted$Party.Scale.Dem)


### Creating a 7-Point Party Scale Democrats
CMPS_2020_primary_sample_weighted <- CMPS_2020_primary_sample_weighted %>% 
  mutate(Democratic.Partisanship.7P = case_when(
    CMPS_2020_primary_sample_weighted$Q21 == 1 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 1, # Strong Republican
    CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 7,  # Strong Dem
    CMPS_2020_primary_sample_weighted$Q21 == 1 ~ 2, # Republican
    CMPS_2020_primary_sample_weighted$Q23 == 1 ~ 3, # Lean Republican
    CMPS_2020_primary_sample_weighted$Q21 == 3 ~ 4, # Independent
    CMPS_2020_primary_sample_weighted$Q23 == 3 ~ 4, # Independent
    CMPS_2020_primary_sample_weighted$Q23 == 2 ~ 5, # Lean Dem
    CMPS_2020_primary_sample_weighted$Q21 == 2 ~ 6, # Democrat
    CMPS_2020_primary_sample_weighted$Q23 == 88 ~ NA, # Dont know
    TRUE ~ NA_integer_
    ))


### Test 5 Point Scale
CMPS_2020_primary_sample_weighted <- CMPS_2020_primary_sample_weighted %>% 
  mutate(Five.Point.Scale.Dem = case_when(
    CMPS_2020_primary_sample_weighted$Q21 == 1 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 1, # Strong rep
    CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 5,  # strong dem
    CMPS_2020_primary_sample_weighted$Q21 == 1 ~ 2, # Republican
    CMPS_2020_primary_sample_weighted$Q21 == 3 ~ 3, # Independents
    CMPS_2020_primary_sample_weighted$Q21 == 4 ~ 3, # Independents
    CMPS_2020_primary_sample_weighted$Q21 == 2 ~ 4, # Democrats
    TRUE ~ NA_integer_
    ))

### Strong Dem Binary
CMPS_2020_primary_sample_weighted$Strong.Dem.Binary <- 0
CMPS_2020_primary_sample_weighted$Strong.Dem.Binary[CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 1] <- 1
table(CMPS_2020_primary_sample_weighted$Strong.Dem.Binary)

### Creating a 7-Point Party Scale Republicans
CMPS_2020_primary_sample_weighted <- CMPS_2020_primary_sample_weighted %>% 
  mutate(Republican.Partisanship = case_when(
    CMPS_2020_primary_sample_weighted$Q21 == 1 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 7, # Strong
    CMPS_2020_primary_sample_weighted$Q21 == 2 & CMPS_2020_primary_sample_weighted$Q22 == 1 ~ 1,  # Moved this condition up
    CMPS_2020_primary_sample_weighted$Q21 == 1 ~ 2, 
    CMPS_2020_primary_sample_weighted$Q23 == 1 ~ 5, 
    CMPS_2020_primary_sample_weighted$Q23 == 3 ~ 4, 
    CMPS_2020_primary_sample_weighted$Q21 == 3 ~ 4,
    CMPS_2020_primary_sample_weighted$Q23 == 2 ~ 3, 
    CMPS_2020_primary_sample_weighted$Q21 == 2 ~ 6, 
    TRUE ~ NA_integer_
    ))


### Language of Survey
CMPS_2020_primary_sample_weighted$Survey.Language <- 0
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 1] <- 1 # English
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 2] <- 2 # Spanish
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 3] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 4] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 5] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language[CMPS_2020_primary_sample_weighted$S1 == 6] <- 0  

### Language of Survey Spnaish
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish <- 0
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 1] <- 0 # English
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 2] <- 1 # Spanish
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 3] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 4] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 5] <- 0  
CMPS_2020_primary_sample_weighted$Survey.Language.Spanish[CMPS_2020_primary_sample_weighted$S1 == 6] <- 0 


### Income
CMPS_2020_primary_sample_weighted$Income <- NA
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 1] <- 1
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 2] <- 2
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 3] <- 3
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 4] <- 4
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 5] <- 5
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 6] <- 6
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 7] <- 7
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 8] <- 8
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 9] <- 9
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 10] <- 10
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 11] <- 11
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 == 12] <- 12
CMPS_2020_primary_sample_weighted$Income[CMPS_2020_primary_sample_weighted$Q813 >= 90] <- NA


#### Age
CMPS_2020_primary_sample_weighted$Age <- NA
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 2] <- 1
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 3] <- 2
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 4] <- 3
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 5] <- 4
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 6] <- 5
CMPS_2020_primary_sample_weighted$Age[CMPS_2020_primary_sample_weighted$S5_Age == 7] <- 6

table(CMPS_2020_primary_sample_weighted$S5_Age)

CMPS.Latino.Adult$Age <- NA
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 2] <- 1  # 18-29
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 3] <- 2  # 30-39
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 4] <- 3  # 40-49
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 5] <- 4  # 50-59
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 6] <- 5  # 60-69
CMPS.Latino.Adult$Age[CMPS.Latino.Adult$S5_Age == 7] <- 6  # 70+


```





## Seperating the Data by Race
```{r}

# Primary Race Latino
CMPS_2020_primary_sample_weighted$Latinx <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 2] <- 1
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 1] <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 3] <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 4] <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 5] <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 6] <- 0
CMPS_2020_primary_sample_weighted$Latinx[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 7] <- 0


# Latino, including white

CMPS_2020_primary_sample_weighted$Latino_White <- 0
CMPS_2020_primary_sample_weighted$Latino_White[CMPS_2020_primary_sample_weighted$S2_Racer2 == 1] <-1
CMPS_2020_primary_sample_weighted$Latino_White[CMPS_2020_primary_sample_weighted$S2_Racer2 == 0] <-0

# Primary Race African American 

CMPS_2020_primary_sample_weighted$AfricanAmerican <- 0
CMPS_2020_primary_sample_weighted$AfricanAmerican[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 3] <- 1

summary(CMPS_2020_primary_sample_weighted$AfricanAmerican)

# Primary Race Asian

CMPS_2020_primary_sample_weighted$Asian <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 4] <- 1
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 2] <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 3] <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 1] <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 5] <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 6] <- 0
CMPS_2020_primary_sample_weighted$Asian[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 7] <- 0

summary(CMPS_2020_primary_sample_weighted$Asian)

# Primary Race White

CMPS_2020_primary_sample_weighted$White <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 1] <- 1
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 2] <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 3] <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 4] <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 5] <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 6] <- 0
CMPS_2020_primary_sample_weighted$White[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 7] <- 0

summary(CMPS_2020_primary_sample_weighted$White)


## Subset Data Frames by race for Adultagers

CMPS.Latino.Adult <- CMPS_2020_primary_sample_weighted[CMPS_2020_primary_sample_weighted$Latinx == "1",] 

CMPS.Latino.Adult.Citizens <- CMPS.Latino.Adult[CMPS.Latino.Adult$Citizenship == "1",] 

CMPS.Latino.Adult.Protected.Status <- CMPS.Latino.Adult[CMPS.Latino.Adult$Protected.Status == "1",] 

CMPS.Latino.Adult.Non.Citizen <- CMPS.Latino.Adult[CMPS.Latino.Adult$Non.Citizen == "1",] 

CMPS.Black.Adult <- CMPS_2020_primary_sample_weighted[CMPS_2020_primary_sample_weighted$AfricanAmerican == "1",]  

CMPS.White.Adult <- CMPS_2020_primary_sample_weighted[CMPS_2020_primary_sample_weighted$White == "1",]  

CMPS.White.Latino.Adult <- CMPS_2020_primary_sample_weighted[CMPS_2020_primary_sample_weighted$Latino_White == "1",]  

CMPS.Asian.Adult <- CMPS_2020_primary_sample_weighted[CMPS_2020_primary_sample_weighted$S2_Race_Prime == 4,]

```





####################################################################################################
####################################################################################################
################################################### Models and Analysis ###########################
####################################################################################################
####################################################################################################


################ Models with All Statuses Final  ################ 

```{r}

# Latino  Adults

Am_ID_Latino_DACA <- lm(American.Identity ~ daca_personal + Education + Survey.Language.Spanish + Income + Large.Urban.Community + Small.Suburban.Community +  Rural.Community + Party.ID.Dem + Gender, data = CMPS.Latino.Adult)
stargazer(Am_ID_Latino_DACA, type = "text")


Am_ID_Latino_Citizens <- lm(American.Identity ~ Citizenship + Education + Survey.Language.Spanish + Income + Large.Urban.Community + Small.Suburban.Community +  Rural.Community + Party.ID.Dem + Gender, data = CMPS.Latino.Adult)
stargazer(Am_ID_Latino_Citizens, type = "text")


Am_ID_Latino_LPR <- lm(American.Identity ~ LPR + Education + Survey.Language.Spanish + Income + Large.Urban.Community + Small.Suburban.Community +  Rural.Community + Party.ID.Dem + Gender, data = CMPS.Latino.Adult)
stargazer(Am_ID_Latino_LPR, type = "text")


Am_ID_Latino_Visa <- lm(American.Identity ~ visa_holder + Education + Survey.Language.Spanish + Income + Large.Urban.Community + Small.Suburban.Community +  Rural.Community + Party.ID.Dem + Gender, data = CMPS.Latino.Adult)
stargazer(Am_ID_Latino_LPR, type = "text")


##### Model with Citizenship as the Reference

Am_ID_Latino_All_Id <- lm(American.Identity ~ daca_personal + LPR + visa_holder +  Education + Survey.Language.Spanish + Income + Large.Urban.Community + Party.ID.Dem + Gender + Skin.Color, data = CMPS.Latino.Adult) 
stargazer(Am_ID_Latino_All_Id, type = "text")



Am_ID_Latino_Youth_All_Id <- lm(American.Identity ~ daca_personal + LPR + visa_holder +  Survey.Language.Spanish + Large.Urban.Community + Party.ID.Dem + Gender + SkinColor, data = CMPS.Latino.Teen)
stargazer(Am_ID_Latino_Youth_All_Id, type = "text")



##### Viz
stargazer(Am_ID_Latino_Youth_All_Id, Am_ID_Latino_All_Id,
          type = "text",  
          column.labels = c("Latino Youth", "Latino Adults"),
          covariate.labels = c("DACA Recipient",
                              "Legal Permanent Resident",
                              "Visa Holder",
                              "Parental Education",
                              "Respondent Education",
                              "Spanish Language",
                              "Household Income",
                              "Large Urban",
                              "Small Suburban",
                              "Rural",
                              "Democrat",
                              "Female",
                              "Constant"),
          star.cutoffs = c(0.05, 0.01, 0.001),
          digits = 2)



stargazer(Am_ID_Latino_Youth_All_Id, Am_ID_Latino_All_Id,
          type = "latex",  
          title = "American Identity Valuation Among Latino Youth and Adults",
          dep.var.labels = "American Identity Valuation",
          column.labels = c("Youth (18-22)", "Adults (23+)"),
          covariate.labels = c("DACA Recipient",
                              "Legal Permanent Resident",
                              "Visa Holder",
                              "Parental Education",
                              "Respondent Education",
                              "Spanish Language",
                              "Household Income",
                              "Large Urban Community",
                              "Small Suburban Community",
                              "Rural Community",
                              "Democrat",
                              "Female",
                              "Constant"),
          notes = c("Reference category for immigration status: U.S. Citizens.",
                   "Standard errors in parentheses.",
                   "Youth model (ages 18-22) controls for parental education.",
                   "Adult model (ages 23+) controls for respondent education.",
                   "All models use survey weights for nationally representative estimates."),
          notes.align = "l",
          notes.append = FALSE,
          star.cutoffs = c(0.05, 0.01, 0.001),
          star.char = c("*", "**", "***"),
          omit.stat = c("f", "ser"),
          digits = 2,
          font.size = "small",
          no.space = TRUE,
          header = FALSE,
          table.placement = "H",
          out = "tables/table1_american_identity.tex")  # Saves to file


```


### Checking for missing data in models

```{r}


## Income

### Finding Missing

# Check missing data on each variable in your model
model_vars <- c("American.Identity", "daca_personal", "LPR", "visa_holder",
                "Education", "Survey.Language.Spanish", "Income",
                "Large.Urban.Community", "Small.Suburban.Community",
                "Rural.Community", "Party.ID.Dem", "Gender")

cat("=== MISSING DATA ANALYSIS ===\n")
cat("Total observations:", nrow(CMPS.Latino.Adult), "\n\n")

# Check each variable
for (var in model_vars) {
  n_missing <- sum(is.na(CMPS.Latino.Adult[[var]]))
  pct_missing <- 100 * n_missing / nrow(CMPS.Latino.Adult)
  cat(sprintf("%-30s Missing: %4d (%.1f%%)\n", var, n_missing, pct_missing))
}

# Check complete cases
complete_cases <- complete.cases(CMPS.Latino.Adult[, model_vars])
cat("\nComplete cases (no missing on any variable):", sum(complete_cases), "\n")
cat("Cases with at least one missing value:", sum(!complete_cases), "\n")

```



######  Multiple Imputation for Youth Parent's Education

```{r}
### Multiple Imputations for Parents Education

install.packages("mice")
install.packages("miceadds")
library(mice)
library(miceadds)


imputation_vars <- c(
  # Variables to impute
  "Mother_Edu",
  "Father_Edu",
  
  # variables in model 
  "American.Identity",
  "daca_personal",
  "LPR",
  "visa_holder",
  "Survey.Language.Spanish",
  "Large.Urban.Community",
  "Small.Suburban.Community",
  "Rural.Community",
  "Party.ID.Dem",
  "Gender",
  
  # Additional predictors 
  "Parent_Foreign_Born"
)


# variable check
available_vars <- imputation_vars[imputation_vars %in% names(CMPS.Latino.Teen)]
print(available_vars)

# imputation dataset
data_for_imputation <- CMPS.Latino.Teen[, available_vars]

# missing data pattern
cat("Missing data summary:\n")
print(sapply(data_for_imputation, function(x) sum(is.na(x))))

cat("\nPercentage missing:\n")
print(round(100 * sapply(data_for_imputation, function(x) sum(is.na(x)) / length(x)), 1))

# viz
md.pattern(data_for_imputation)

#  multiple imputation
set.seed(12345)  # For reproducibility

imputed_data <- mice(
  data_for_imputation,
  m = 10,                    
  method = "pmm",            
  maxit = 20,                
  seed = 12345,
  print = FALSE
)

# convergence check
plot(imputed_data)

densityplot(imputed_data, ~Mother_Edu + Father_Edu)

# Parent_Education / each imputed dataset
create_parent_ed <- function(data) {
  data$Parent_Education <- pmax(data$Mother_Edu, data$Father_Edu, na.rm = TRUE)
  return(data)
}

# all imputed datasets as a list
imputed_list <- complete(imputed_data, "all")

# application
imputed_list <- lapply(imputed_list, create_parent_ed)

# conversion
imputed_data_long <- complete(imputed_data, "long", include = TRUE)
imputed_data_long$Parent_Education <- pmax(imputed_data_long$Mother_Edu, 
                                           imputed_data_long$Father_Edu, 
                                           na.rm = TRUE)
imputed_final <- as.mids(imputed_data_long)


# regression model on each imputed dataset

fit_mi <- with(imputed_final,
              lm(American.Identity ~ daca_personal + LPR + visa_holder +
                 Parent_Education + Survey.Language.Spanish +
                 Large.Urban.Community + Small.Suburban.Community +
                 Rural.Community + Party.ID.Dem + Gender))


# pool results
pooled_results <- pool(fit_mi)

summary(pooled_results)

# summary
pooled_summary <- summary(pooled_results)
print(pooled_summary, digits = 3)



# origional model w listwise deletion
complete_case_model <- lm(American.Identity ~ daca_personal + LPR + visa_holder +
                         Parent_Education + Survey.Language.Spanish +
                         Large.Urban.Community + Small.Suburban.Community +
                         Rural.Community + Party.ID.Dem + Gender,
                         data = CMPS.Latino.Teen)

#  sample sizes
cat("\n=== SAMPLE SIZE COMPARISON ===\n")
cat("Complete case N:", length(complete_case_model$fitted.values), "\n")
cat("MI N:", nrow(data_for_imputation), "\n")
cat("Observations recovered:", 
    nrow(data_for_imputation) - length(complete_case_model$fitted.values), "\n")

# key coefficient (DACA)
cat("\n=== DACA COEFFICIENT COMPARISON ===\n")
cat("Complete case:", 
    round(coef(complete_case_model)["daca_personal"], 3), 
    " (SE:", round(summary(complete_case_model)$coefficients["daca_personal", "Std. Error"], 3), ")\n")
cat("MI:", 
    round(pooled_summary$estimate[pooled_summary$term == "daca_personal"], 3),
    " (SE:", round(pooled_summary$std.error[pooled_summary$term == "daca_personal"], 3), ")\n")


fit_mi <- with(imputed_final,
              lm(American.Identity ~ daca_personal + LPR + visa_holder +
                 Parent_Education + Survey.Language.Spanish +
                 Large.Urban.Community + Small.Suburban.Community +
                 Rural.Community + Party.ID.Dem + Gender))

pooled_results <- pool(fit_mi)
pooled_summary <- summary(pooled_results)


print(pooled_summary)


```




##### Single Imputation With Vizualization

```{r}

#   single-imputed dataset 
all_imputed <- complete(imputed_data, "all")
Mother_Edu_avg <- rowMeans(sapply(all_imputed, function(df) df$Mother_Edu))
Father_Edu_avg <- rowMeans(sapply(all_imputed, function(df) df$Father_Edu))

CMPS.Latino.Teen$Parent_Education <- ifelse(
  is.na(CMPS.Latino.Teen$Mother_Edu) & is.na(CMPS.Latino.Teen$Father_Edu),
  round(pmax(Mother_Edu_avg, Father_Edu_avg)),
  pmax(CMPS.Latino.Teen$Mother_Edu, CMPS.Latino.Teen$Father_Edu, na.rm = TRUE)
)

#  Main Model
Am_ID_Latino_Youth_All_Id <- lm(American.Identity ~ daca_personal + LPR + visa_holder +
                               Parent_Education + Survey.Language.Spanish +
                               Large.Urban.Community + Small.Suburban.Community +
                               Rural.Community + Party.ID.Dem + Gender,
                               data = CMPS.Latino.Teen)


# table
stargazer(Am_ID_Latino_Youth_All_Id, Am_ID_Latino_All_Id,
          type = "html",
          
          title = "American Identity Valuation Among Latino Youth and Adults",
          dep.var.labels = "American Identity Valuation",
          column.labels = c("Youth (18-22)", "Adults (23+)"),
          
          covariate.labels = c("DACA Recipient",
                              "Legal Permanent Resident",
                              "Visa Holder",
                              "Parental Education",
                              "Respondent Education",
                              "Spanish Language",
                              "Household Income",
                              "Large Urban Community",
                              "Small Suburban Community",
                              "Rural Community",
                              "Democrat",
                              "Female",
                              "Constant"),
          
          # Notes
          notes = c("Reference category for immigration status: U.S. Citizens.",
                   "* p<0.05; ** p<0.01; *** p<0.001"),
          notes.align = "l",
          
          # Formatting
          star.cutoffs = c(0.05, 0.01, 0.001),
          digits = 3,
          no.space = TRUE,
          omit.stat = c("f", "ser"),
          
          # Output file
          out = "tables/table1_american_identity.html")

cat("✓ HTML table saved to: tables/table1_american_identity.html\n")
cat("  Open this file in a browser and copy-paste into Word\n")





```




### Create a flex table (Table 1. Descriptive Statistics)

```{r}

install.packages("flextable")
library(flextable)
install.packages("officer")
library(officer)

# Get coefficients
youth_results <- summary(Am_ID_Latino_Youth_All_Id)$coefficients
adult_results <- summary(Am_ID_Latino_All_Id)$coefficients

# Helper function
format_coef <- function(coef_matrix, var_name) {
  if (var_name %in% rownames(coef_matrix)) {
    est <- coef_matrix[var_name, "Estimate"]
    se <- coef_matrix[var_name, "Std. Error"]
    p <- coef_matrix[var_name, "Pr(>|t|)"]
    
    stars <- ifelse(p < 0.001, "***",
             ifelse(p < 0.01, "**",
             ifelse(p < 0.05, "*", "")))
    
    return(list(
      coef = sprintf("%.3f%s", est, stars),
      se = sprintf("(%.3f)", se)
    ))
  } else {
    return(list(coef = "—", se = ""))
  }
}

# Define variables
all_vars <- c("(Intercept)", "daca_personal", "LPR", "visa_holder",
              "Parent_Education", "Education", "Survey.Language.Spanish",
              "Income", "Large.Urban.Community", "Small.Suburban.Community",
              "Rural.Community", "Party.ID.Dem", "Gender")

var_labels <- c("Constant", "DACA Recipient", "Legal Permanent Resident",
                "Visa Holder", "Parental Education", "Respondent Education",
                "Spanish Language", "Household Income", "Large Urban Community",
                "Small Suburban Community", "Rural Community", "Democrat", "Female")

# Extract coefficients
youth_data <- lapply(all_vars, function(v) format_coef(youth_results, v))
adult_data <- lapply(all_vars, function(v) format_coef(adult_results, v))

# stacking data
rows_list <- list()
for (i in seq_along(var_labels)) {
  # Coefficient row
  rows_list[[length(rows_list) + 1]] <- data.frame(
    Variable = var_labels[i],
    Youth = youth_data[[i]]$coef,
    Adult = adult_data[[i]]$coef,
    stringsAsFactors = FALSE
  )
  
  # SE row (blank variable name)
  rows_list[[length(rows_list) + 1]] <- data.frame(
    Variable = "",
    Youth = youth_data[[i]]$se,
    Adult = adult_data[[i]]$se,
    stringsAsFactors = FALSE
  )
}

# Combine all rows
table_data <- do.call(rbind, rows_list)

# Remove rows where both models have "—"
table_data <- table_data[!(table_data$Youth == "—" & table_data$Adult == "—"), ]

# Create flextable
ft <- flextable(table_data)
ft <- set_header_labels(ft,
  Variable = "",
  Youth = "Youth (18-22)",
  Adult = "Adults (23+)"
)

# Format
ft <- theme_booktabs(ft)
ft <- fontsize(ft, size = 11, part = "all")
ft <- font(ft, fontname = "Times New Roman", part = "all")
ft <- align(ft, align = "center", part = "header")
ft <- align(ft, j = 2:3, align = "center", part = "body")
ft <- align(ft, j = 1, align = "left", part = "body")
ft <- width(ft, j = 1, width = 2.5)
ft <- width(ft, j = 2:3, width = 1.5)

# Add borders (publication style)
ft <- border_remove(ft)
ft <- hline_top(ft, border = fp_border(width = 2), part = "header")
ft <- hline_bottom(ft, border = fp_border(width = 2), part = "body")
ft <- hline(ft, border = fp_border(width = 1), part = "header")

# Add footer
n_youth <- nobs(Am_ID_Latino_Youth_All_Id)
n_adult <- nobs(Am_ID_Latino_All_Id)
r2_youth <- summary(Am_ID_Latino_Youth_All_Id)$r.squared
r2_adult <- summary(Am_ID_Latino_All_Id)$r.squared

ft <- add_footer_lines(ft, values = c(
  sprintf("N = %d (Youth), %d (Adults)", n_youth, n_adult),
  sprintf("R² = %.3f (Youth), %.3f (Adults)", r2_youth, r2_adult),
  "Note: Reference: U.S. Citizens. Standard errors in parentheses. * p<0.05, ** p<0.01, *** p<0.001"
))
ft <- fontsize(ft, size = 9, part = "footer")
ft <- align(ft, align = "left", part = "footer")

# Save
doc <- read_docx()
doc <- body_add_par(doc, 
  "Table 1. American Identity Valuation Among Latino Youth and Adults",
  style = "heading 1")
doc <- body_add_flextable(doc, ft)
print(doc, target = "tables/table1_american_identity.docx")

cat("✓ Word table saved to: tables/table1_american_identity.docx\n")


```



##### General Statistics

```{r}
library(flextable)
library(officer)



# Youth statistics
youth_stats <- data.frame(
  Group = "Latino Youth",
  N = sum(!is.na(CMPS.Latino.Teen$American.Identity)),
  Mean = mean(CMPS.Latino.Teen$American.Identity, na.rm = TRUE),
  SD = sd(CMPS.Latino.Teen$American.Identity, na.rm = TRUE),
  Median = median(CMPS.Latino.Teen$American.Identity, na.rm = TRUE),
  
  # Categories (higher = stronger)
  High = 100 * mean(CMPS.Latino.Teen$American.Identity >= 6 & 
                    CMPS.Latino.Teen$American.Identity <= 8, na.rm = TRUE),
  Medium = 100 * mean(CMPS.Latino.Teen$American.Identity >= 3 & 
                      CMPS.Latino.Teen$American.Identity <= 5, na.rm = TRUE),
  Low = 100 * mean(CMPS.Latino.Teen$American.Identity >= 1 & 
                   CMPS.Latino.Teen$American.Identity <= 2, na.rm = TRUE)
)

# Adult statistics
adult_stats <- data.frame(
  Group = "Latino Adults",
  N = sum(!is.na(CMPS.Latino.Adult$American.Identity)),
  Mean = mean(CMPS.Latino.Adult$American.Identity, na.rm = TRUE),
  SD = sd(CMPS.Latino.Adult$American.Identity, na.rm = TRUE),
  Median = median(CMPS.Latino.Adult$American.Identity, na.rm = TRUE),
  
  High = 100 * mean(CMPS.Latino.Adult$American.Identity >= 6 & 
                    CMPS.Latino.Adult$American.Identity <= 8, na.rm = TRUE),
  Medium = 100 * mean(CMPS.Latino.Adult$American.Identity >= 3 & 
                      CMPS.Latino.Adult$American.Identity <= 5, na.rm = TRUE),
  Low = 100 * mean(CMPS.Latino.Adult$American.Identity >= 1 & 
                   CMPS.Latino.Adult$American.Identity <= 2, na.rm = TRUE)
)

# Combine
table_data <- rbind(youth_stats, adult_stats)

# fomrat numebrs
final_table <- data.frame(
  Group = table_data$Group,
  N = table_data$N,
  Mean = sprintf("%.2f", table_data$Mean),
  SD = sprintf("(%.2f)", table_data$SD),
  Median = sprintf("%.2f", table_data$Median),
  High = sprintf("%.1f%%", table_data$High),
  Medium = sprintf("%.1f%%", table_data$Medium),
  Low = sprintf("%.1f%%", table_data$Low)
)

# CREATE FLEXTABLE 
ft <- flextable(final_table)

# Set column headers
ft <- set_header_labels(ft,
  Group = "Group",
  N = "N",
  Mean = "Mean",
  SD = "SD",
  Median = "Median",
  High = "High (6-8)",
  Medium = "Medium (3-5)",
  Low = "Low (1-2)"
)

# Add grouped header row
ft <- add_header_row(ft,
  values = c("", "Central Tendency", "Distribution (%)"),
  colwidths = c(2, 3, 3)
)

#  format
ft <- theme_booktabs(ft)
ft <- fontsize(ft, size = 11, part = "all")
ft <- font(ft, fontname = "Times New Roman", part = "all")
ft <- align(ft, align = "center", part = "header")
ft <- align(ft, j = 1, align = "left", part = "body")
ft <- align(ft, j = 2:8, align = "center", part = "body")

# Column widths
ft <- width(ft, j = 1, width = 1.5)
ft <- width(ft, j = 2, width = 0.6)
ft <- width(ft, j = 3:5, width = 0.8)
ft <- width(ft, j = 6:8, width = 1.0)

# broders
ft <- border_remove(ft)
ft <- hline_top(ft, border = fp_border(width = 2), part = "header")
ft <- hline_bottom(ft, border = fp_border(width = 2), part = "body")
ft <- hline(ft, i = 1, border = fp_border(width = 1), part = "header")
ft <- hline(ft, i = 2, border = fp_border(width = 1), part = "header")

# note
ft <- add_footer_lines(ft, 
  values = "Note: American Identity measured on 1-8 scale, with 8 indicating strongest identification.")
ft <- fontsize(ft, size = 9, part = "footer")
ft <- align(ft, align = "left", part = "footer")
ft <- italic(ft, part = "footer")

# save / file
doc <- read_docx()
doc <- body_add_par(doc, 
  "Table X. Descriptive Statistics: American Identity Valuation Among Latino Youth and Adults",
  style = "heading 1")
doc <- body_add_flextable(doc, ft)
print(doc, target = "tables/descriptive_stats.docx")

cat("✓ Descriptive statistics table saved to: tables/descriptive_stats.docx\n")
cat("\nActual values:\n")
print(final_table)
```




######## Visualizing American Identity Acorss Age Cohorts
```{r}


#### Packages
library(dplyr)
library(haven)
install.packages("ggplot2")
library(ggplot2)


#### clearing old Data
CMPS.Latino.Adult <- CMPS.Latino.Adult %>% select(-any_of("daca_personal"))
CMPS.Latino.Teen  <- CMPS.Latino.Teen  %>% select(-any_of("daca_personal"))

# adult dataset
CMPS.Latino.Adult <- zap_labels(CMPS.Latino.Adult)

# youth dataset  
CMPS.Latino.Teen <- zap_labels(CMPS.Latino.Teen)


# Adult
CMPS.Latino.Adult <- CMPS.Latino.Adult %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,
    Q470 == 2 ~ 0,
    Q470 == 1 & Q471r1 != 1 ~ 0,
    TRUE ~ NA_real_
  ))

# Youth
CMPS.Latino.Teen <- CMPS.Latino.Teen %>%
  mutate(daca_personal = case_when(
    Q470 == 1 & Q471r1 == 1 ~ 1,
    Q470 == 2 ~ 0,
    Q470 == 1 & Q471r1 != 1 ~ 0,
    TRUE ~ NA_real_
  ))

# combine
CMPS.Latino.Combined <- bind_rows(CMPS.Latino.Adult, CMPS.Latino.Teen)


cat("Combined dataset N:", nrow(CMPS.Latino.Combined), "\n")
cat("DACA recipients:", sum(CMPS.Latino.Combined$daca_personal == 1, na.rm = TRUE), "\n")

# create Age groups 
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(Age = case_when(
    S5_Age == 1 ~ 1,  # 16-17
    S5_Age == 2 ~ 2,  # 18-29
    S5_Age == 3 ~ 3,  # 30-39
    S5_Age == 4 ~ 4,  # 40-49
    S5_Age == 5 ~ 5,  # 50-59
    S5_Age == 6 ~ 6,  # 60-69
    S5_Age == 7 ~ 7,  # 70+
    TRUE ~ NA_real_
  ))


# DACA eligibility criteria. Recoded to NA.
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(daca_personal = ifelse(daca_personal == 1 & Age >= 5, NA_real_, daca_personal))

CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(Age = ifelse(daca_personal == 1 & Age == 4, 3, Age))


# American Identity (reverse code) 
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(American.Identity = case_when(
    Q560r8 == 1 ~ 8,
    Q560r8 == 2 ~ 7,
    Q560r8 == 3 ~ 6,
    Q560r8 == 4 ~ 5,
    Q560r8 == 5 ~ 4,
    Q560r8 == 6 ~ 3,
    Q560r8 == 7 ~ 2,
    Q560r8 == 8 ~ 1,
    TRUE ~ NA_real_
  ))

# calculate means by age cohort
age_identity_daca_combined <- CMPS.Latino.Combined %>%
  filter(daca_personal == 1, !is.na(Age), !is.na(American.Identity)) %>%
  group_by(Age) %>%
  summarise(
    mean_identity = mean(American.Identity, na.rm = TRUE),
    se = sd(American.Identity, na.rm = TRUE) / sqrt(n()),
    n = n()
  ) %>%
  mutate(age_label = factor(Age,
                            levels = 1:7,
                            labels = c("16-17", "18-29", "30-39", "40-49",
                                      "50-59", "60-69", "70+")))

#  sample sizes
cat("\n=== DACA Recipients by Age Group ===\n")
print(age_identity_daca_combined)

# plot 
ggplot(age_identity_daca_combined, aes(x = age_label, y = mean_identity, group = 1)) +
  geom_line(color = "#2C7BB6", size = 1.2) +
  geom_point(color = "#2C7BB6", size = 3) +
  geom_errorbar(aes(ymin = mean_identity - 1.96 * se, 
                    ymax = mean_identity + 1.96 * se), 
                width = 0.2, color = "#2C7BB6", linewidth = 1) +
  labs(title = "American Identity Among Latino DACA Recipients Across the Life Cycle",
       x = "Age Group",
       y = "Mean American Identity (1-8)") +
  scale_y_continuous(limits = c(1, 8), breaks = 1:8) +
  theme_minimal() +
  theme(
    plot.title = element_text(size = 14, face = "bold"),
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 11)
  )



##### Plot with Two Groups

# Calculate means for DACA / Non recipients
age_daca <- CMPS.Latino.Combined %>%
  filter(daca_personal == 1) %>%
  group_by(Age) %>%
  summarise(mean_identity = mean(American.Identity, na.rm = TRUE),
            se = sd(American.Identity, na.rm = TRUE) / sqrt(n())) %>%
  filter(!is.na(Age)) %>%
  mutate(group = "DACA Recipients")

age_nondaca <- CMPS.Latino.Combined %>%
  filter(daca_personal == 0) %>%
  group_by(Age) %>%
  summarise(mean_identity = mean(American.Identity, na.rm = TRUE),
            se = sd(American.Identity, na.rm = TRUE) / sqrt(n())) %>%
  filter(!is.na(Age)) %>%
  mutate(group = "Non-DACA Latinos")

age_combined <- bind_rows(age_daca, age_nondaca) %>%
  mutate(age_label = factor(Age,
                            levels = 1:7,
                            labels = c("16-17", "18-29", "30-39", "40-49",
                                       "50-59", "60-69", "70+")))


# Plot with two lines
ggplot(age_combined, aes(x = age_label, y = mean_identity, 
                         group = group, color = group)) +
  geom_line(size = 1) +
  geom_point(size = 3) +
  geom_errorbar(aes(ymin = mean_identity - 1.96 * se, 
                    ymax = mean_identity + 1.96 * se), 
                width = 0.2) +
  scale_color_manual(values = c("DACA Recipients" = "black", 
                                "Non-DACA Latinos" = "gray")) +
  labs(title = "American Identity Valuations Among Latinos Across the Life Cycle",
       x = "Age",
       y = "Mean American Identity (1-8)",
       color = "") +
  theme_minimal()





```



############################## Second Attempt at Age Group DATA Visualization #################################

```{r}
library(dplyr)
library(ggplot2)
library(haven)

#  Ensure clean datasets 
CMPS.Latino.Adult <- zap_labels(CMPS.Latino.Adult)
CMPS.Latino.Teen  <- zap_labels(CMPS.Latino.Teen)

# Add sample identifiers 
CMPS.Latino.Adult <- CMPS.Latino.Adult %>% mutate(sample = "adult")
CMPS.Latino.Teen  <- CMPS.Latino.Teen  %>% mutate(sample = "youth")

# Combine 
CMPS.Latino.Combined <- bind_rows(CMPS.Latino.Adult, CMPS.Latino.Teen)

#  Rebuild key variables on combined dataset 
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(
    # American Identity reverse coded 1-8
    American.Identity = case_when(
      Q560r8 == 1 ~ 8,
      Q560r8 == 2 ~ 7,
      Q560r8 == 3 ~ 6,
      Q560r8 == 4 ~ 5,
      Q560r8 == 5 ~ 4,
      Q560r8 == 6 ~ 3,
      Q560r8 == 7 ~ 2,
      Q560r8 == 8 ~ 1,
      TRUE ~ NA_real_
    ),
    # DACA personal
    daca_personal = case_when(
      Q470 == 1 & Q471r1 == 1 ~ 1,
      Q470 == 2               ~ 0,
      Q470 == 1 & Q471r1 != 1 ~ 0,
      TRUE                    ~ NA_real_
    ),
    # Age groups matching 2020 figure
    Age.Group = case_when(
      S5_Age == 1 ~ "16-17",
      S5_Age == 2 ~ "18-29",
      S5_Age == 3 ~ "30-39",
      S5_Age == 4 ~ "40-49",
      S5_Age == 5 ~ "50-59",
      S5_Age == 6 ~ "60-69",
      S5_Age == 7 ~ "70+",
      TRUE        ~ NA_character_
    ),
    Age.Group.Num = case_when(
      S5_Age == 1 ~ 1,
      S5_Age == 2 ~ 2,
      S5_Age == 3 ~ 3,
      S5_Age == 4 ~ 4,
      S5_Age == 5 ~ 5,
      S5_Age == 6 ~ 6,
      S5_Age == 7 ~ 7,
      TRUE        ~ NA_real_
    ),
    Age.Group = factor(Age.Group,
                       levels = c("16-17", "18-29", "30-39",
                                  "40-49", "50-59", "60-69", "70+"))
  )

#  Remove implausible DACA cases (born before 1981) 
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(
    daca_personal = ifelse(daca_personal == 1 & Age.Group.Num >= 5,
                           NA_real_, daca_personal)
  )

#  Build Status.Plot (DACA vs Citizen only) 
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(
    Status.Plot = case_when(
      daca_personal == 1  ~ "DACA Recipients",
      Citizenship == 1    ~ "Latino Citizens",
      TRUE                ~ NA_character_
    ))

# Check cell sizes
CMPS.Latino.Combined %>%
  filter(!is.na(Status.Plot), !is.na(Age.Group)) %>%
  count(Age.Group, Status.Plot)

#  Residualize American Identity controlling for covariates 
# Youth model
model_youth_2020 <- lm(American.Identity ~
                         Survey.Language.Spanish +
                         Parent_Education +
                         Large.Urban.Community +
                         Party.ID.Dem +
                         Gender,
                       data = filter(CMPS.Latino.Combined,
                                     sample == "youth",
                                     Status.Plot %in% c("DACA Recipients",
                                                        "Latino Citizens"),
                                     !is.na(American.Identity)))

# Adult model
model_adult_2020 <- lm(American.Identity ~
                         Survey.Language.Spanish +
                         Education +
                         Income +
                         Large.Urban.Community +
                         Party.ID.Dem +
                         Gender,
                       data = filter(CMPS.Latino.Combined,
                                     sample == "adult",
                                     Status.Plot %in% c("DACA Recipients",
                                                        "Latino Citizens"),
                                     !is.na(American.Identity),
                                     !is.na(Age.Group)))

# Grand mean for recentering
grand_mean_2020 <- mean(CMPS.Latino.Combined$American.Identity, na.rm = TRUE)

# Add residuals to dataset
CMPS.Latino.Combined <- CMPS.Latino.Combined %>%
  mutate(American.Identity.Adj = NA_real_)

youth_idx <- which(CMPS.Latino.Combined$sample == "youth" &
                   CMPS.Latino.Combined$Status.Plot %in%
                     c("DACA Recipients", "Latino Citizens") &
                   !is.na(CMPS.Latino.Combined$American.Identity))

CMPS.Latino.Combined$American.Identity.Adj[youth_idx] <-
  residuals(model_youth_2020) + grand_mean_2020

adult_idx <- which(CMPS.Latino.Combined$sample == "adult" &
                   CMPS.Latino.Combined$Status.Plot %in%
                     c("DACA Recipients", "Latino Citizens") &
                   !is.na(CMPS.Latino.Combined$American.Identity) &
                   !is.na(CMPS.Latino.Combined$Age.Group))

CMPS.Latino.Combined$American.Identity.Adj[adult_idx] <-
  residuals(model_adult_2020) + grand_mean_2020


# Rebuild adult index to match model's complete cases exactly
adult_data <- CMPS.Latino.Combined %>%
  mutate(row_id = row_number()) %>%
  filter(
    sample == "adult",
    Status.Plot %in% c("DACA Recipients", "Latino Citizens"),
    !is.na(American.Identity),
    !is.na(Age.Group),
    !is.na(Survey.Language.Spanish),
    !is.na(Education),
    !is.na(Income),
    !is.na(Large.Urban.Community),
    !is.na(Party.ID.Dem),
    !is.na(Gender)
  )

# Rerun adult model on this clean subset
model_adult_2020 <- lm(American.Identity ~
                         Survey.Language.Spanish +
                         Education +
                         Income +
                         Large.Urban.Community +
                         Party.ID.Dem +
                         Gender,
                       data = adult_data)

# Assign residuals using row_id to ensure correct alignment
CMPS.Latino.Combined$American.Identity.Adj[adult_data$row_id] <-
  residuals(model_adult_2020) + grand_mean_2020

# Do the same for youth
youth_data <- CMPS.Latino.Combined %>%
  mutate(row_id = row_number()) %>%
  filter(
    sample == "youth",
    Status.Plot %in% c("DACA Recipients", "Latino Citizens"),
    !is.na(American.Identity),
    !is.na(Survey.Language.Spanish),
    !is.na(Parent_Education),
    !is.na(Large.Urban.Community),
    !is.na(Party.ID.Dem),
    !is.na(Gender)
  )

model_youth_2020 <- lm(American.Identity ~
                         Survey.Language.Spanish +
                         Parent_Education +
                         Large.Urban.Community +
                         Party.ID.Dem +
                         Gender,
                       data = youth_data)

CMPS.Latino.Combined$American.Identity.Adj[youth_data$row_id] <-
  residuals(model_youth_2020) + grand_mean_2020

# Compute adjusted means 
identity_means_2020 <- CMPS.Latino.Combined %>%
  filter(!is.na(Status.Plot),
         !is.na(Age.Group),
         !is.na(American.Identity.Adj)) %>%
  mutate(Age.Group = as.character(Age.Group)) %>%
  group_by(Age.Group, Status.Plot) %>%
  summarise(
    mean_identity = mean(American.Identity.Adj, na.rm = TRUE),
    se            = sd(American.Identity.Adj, na.rm = TRUE) / sqrt(n()),
    n             = n(),
    .groups       = "drop"
  ) %>%
  mutate(
    # Force minimum se for tiny cells
    se = case_when(n < 5 ~ pmax(se, 0.5), TRUE ~ se),
    Age.Group = factor(Age.Group,
                       levels = c("16-17", "18-29", "30-39",
                                  "40-49", "50-59", "60-69", "70+"))
  )

print(identity_means_2020)

#  Plot 
ggplot(identity_means_2020,
       aes(x     = Age.Group,
           y     = mean_identity,
           group = Status.Plot,
           color = Status.Plot,
           shape = Status.Plot)) +
  geom_line(linewidth = 0.8, na.rm = TRUE) +
  geom_point(size = 3, na.rm = TRUE) +
  geom_errorbar(
    aes(ymin = mean_identity - 1.96 * se,
        ymax = pmin(mean_identity + 1.96 * se, 8)),
    width  = 0.2,
    na.rm  = TRUE
  ) +
  scale_color_manual(
    values = c(
      "DACA Recipients" = "black",
      "Latino Citizens" = "grey60"
    )) +
  scale_shape_manual(
    values = c(
      "DACA Recipients" = 16,
      "Latino Citizens" = 16
    )) +
  scale_y_continuous(
    limits = c(1, 8),
    breaks = seq(1, 8, 1)
  ) +
  labs(
    title    = "American Identity Valuation Across the Life Cycle",
    subtitle = "CMPS 2020 Latino Respondents — Covariate Adjusted",
    x        = "Age Group",
    y        = "Adjusted Mean American Identity Valuation (1-8)",
    color    = NULL,
    shape    = NULL,
    caption  = "Note: Means adjusted for language, education, income, community size,\npartisanship, and gender. Error bars represent 95% confidence intervals.\nDACA recipient estimates based on small sample sizes in youth and older age groups."
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title            = element_text(face = "bold"),
    legend.position       = "bottom",
    panel.grid.major.x    = element_blank(),
    plot.caption          = element_text(hjust = 0),
    plot.caption.position = "plot"
  )

# Bar Chart
identity_means_2020 %>%
  filter(Age.Group %in% c("16-17", "18-29", "30-39", "40-49")) %>%
  ggplot(aes(x    = Age.Group,
             y    = mean_identity,
             fill = Status.Plot)) +
  geom_col(
    position = position_dodge(width = 0.7),
    width    = 0.6,
    na.rm    = TRUE
  ) +
  geom_errorbar(
    aes(ymin = mean_identity - 1.96 * se,
        ymax = pmin(mean_identity + 1.96 * se, 8)),
    position = position_dodge(width = 0.7),
    width    = 0.25,
    na.rm    = TRUE
  ) +
  scale_fill_manual(
    values = c(
      "DACA Recipients" = "black",
      "Latino Citizens" = "grey60"
    )
  ) +
  scale_y_continuous(
    limits = c(0, 8),
    breaks = seq(0, 8, 1),
    expand = expansion(mult = c(0, 0.02))
  ) +
  labs(
    title    = "American Identity Valuation By Age Cohort",
    subtitle = "CMPS 2020 Latino Respondents — Covariate Adjusted",
    x        = "Age Group",
    y        = "Adjusted Mean American Identity Valuation",
    fill     = NULL,
    caption  = "Note: Means adjusted for language, education, income, community size,\npartisanship, and gender. Error bars represent 95% confidence intervals.\nDACA recipient estimates based on small sample sizes in youth and older age groups."
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title            = element_text(face = "bold"),
    legend.position       = "bottom",
    panel.grid.major.x    = element_blank(),
    plot.caption          = element_text(hjust = 0),
    plot.caption.position = "plot"
  )
```




##### Clustered Bar Plot with Two Groups (Figure 1 Final)

```{r}



# Descriptive means (raw, no adjustment) 
identity_means_descriptive <- CMPS.Latino.Combined %>%
  filter(
    Status.Plot %in% c("DACA Recipients", "Latino Citizens"),
    Age.Group %in% c("16-17", "18-29", "30-39", "40-49"),
    !is.na(American.Identity)
  ) %>%
  group_by(Age.Group, Status.Plot) %>%
  summarise(
    mean_identity = mean(American.Identity, na.rm = TRUE),
    se            = sd(American.Identity, na.rm = TRUE) / sqrt(n()),
    n             = n(),
    .groups       = "drop"
  ) %>%
  mutate(
    Age.Group = factor(Age.Group,
                       levels = c("16-17", "18-29", "30-39", "40-49"))
  )

# Descriptive, no error bars 
p_descriptive <- ggplot(identity_means_descriptive,
       aes(x    = Age.Group,
           y    = mean_identity,
           fill = Status.Plot)) +
  geom_col(
    position = position_dodge(width = 0.7),
    width    = 0.6
  ) +
  scale_fill_manual(
    values = c(
      "DACA Recipients" = "black",
      "Latino Citizens" = "grey60"
    )
  ) +
  scale_y_continuous(
    limits = c(0, 8),
    breaks = seq(0, 8, 1),
    expand = expansion(mult = c(0, 0.02))
  ) +
  facet_wrap(~ Status.Plot, ncol = 2) +
  labs(
    title    = "American Identity Valuation by Age Cohort",
    subtitle = "Descriptive Means",
    x        = "Age Group",
    y        = "Mean American Identity Valuation (1-8)",
    fill     = NULL,
    caption  = "Note: Bars represent unadjusted group means. Covariate-adjusted estimates show the same pattern \n(see Appendix B)."
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title            = element_text(face = "bold"),
    legend.position       = "none",
    strip.text            = element_text(face = "bold", size = 12),
    panel.grid.major.x    = element_blank(),
    plot.caption          = element_text(hjust = 0),
    plot.caption.position = "plot"
  )

# Covariate-adjusted, with error bars (Appendix A) 
p_adjusted <- identity_means_2020 %>%
  filter(Age.Group %in% c("16-17", "18-29", "30-39", "40-49")) %>%
  ggplot(aes(x    = Age.Group,
             y    = mean_identity,
             fill = Status.Plot)) +
  geom_col(
    position = position_dodge(width = 0.7),
    width    = 0.6
  ) +
  geom_errorbar(
    aes(ymin = mean_identity - 1.96 * se,
        ymax = pmin(mean_identity + 1.96 * se, 8)),
    position = position_dodge(width = 0.7),
    width    = 0.25
  ) +
  scale_fill_manual(
    values = c(
      "DACA Recipients" = "black",
      "Latino Citizens" = "grey60"
    )
  ) +
  scale_y_continuous(
    limits = c(0, 8),
    breaks = seq(0, 8, 1),
    expand = expansion(mult = c(0, 0.02))
  ) +
  facet_wrap(~ Status.Plot, ncol = 2) +
  labs(
    x        = "Age Group",
    y        = "Adjusted Mean American Identity Valuation",
    fill     = NULL,
    caption  = "Note: Means adjusted for language, education, income, community size,\npartisanship, and gender. Error bars represent 95% confidence intervals.\nDACA recipient estimates based on small sample sizes."
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title            = element_text(face = "bold"),
    legend.position       = "none",
    strip.text            = element_text(face = "bold", size = 12),
    panel.grid.major.x    = element_blank(),
    plot.caption          = element_text(hjust = 0),
    plot.caption.position = "plot"
  )

# Print both 
p_descriptive
p_adjusted


# Cell means and gap table 
identity_means_descriptive %>%
  select(Age.Group, Status.Plot, mean_identity, n) %>%
  pivot_wider(
    names_from  = Status.Plot,
    values_from = c(mean_identity, n)
  ) %>%
  mutate(
    gap = `mean_identity_Latino Citizens` - `mean_identity_DACA Recipients`,
    pct_gap = gap / `mean_identity_Latino Citizens` * 100
  ) %>%
  arrange(Age.Group)
```





```{r}
identity_means_2020 %>%
  select(Age.Group, Status.Plot, mean_identity) %>%
  pivot_wider(names_from = Status.Plot, values_from = mean_identity) %>%
  mutate(gap = `Latino Citizens` - `DACA Recipients`)
```




