###################################################################### # R Script for Analysis of the 2012 NORC Presidential Election Study # ###################################################################### # library(survey) library(Hmisc) # # Read in data # setwd("d:/data") #Set the path npes<-read.csv("electionstudy2012.csv",header=TRUE) #Read comma delimited data file names(npes) # # Establish factor variables # CAN_PREFlevels=c(1:4,77,99) CAN_PREFlabels=c(" Barack Obama"," Mitt Romney"," Some Other Candidate"," Undecided"," DK"," Refused") npes$CAN_PREF_I=factor(npes$CAN_PREF_I,levels=CAN_PREFlevels,labels=CAN_PREFlabels,exclude=NULL) PARTY_AFFIL_Rlevels=c(1:4) PARTY_AFFIL_Rlabels=c("Republican","Democrat","Independent","Other/DK/RF") npes$PARTY_AFFIL_R_I=factor(npes$PARTY_AFFIL_R_I, levels=PARTY_AFFIL_Rlevels,labels=PARTY_AFFIL_Rlabels,exclude=NULL) AGElevels=c(1:4,77) AGElabels=c("18-29 Years","30-54 Years","55-64 Years","65+ Years","DK") npes$AGE_CAT_I=factor(npes$AGE_CAT_I,levels=AGElevels,labels=AGElabels,exclude=NULL) SOC_SEClevels=c(1:2,77,99) SOC_SEClabels=c("Change the Program","Keep Program as Is","DK","Refused") npes$SOC_SEC_I=factor(npes$SOC_SEC_I,levels=SOC_SEClevels,labels=SOC_SEClabels,exclude=NULL) npes$MED_FUTURE_II[npes$MED_FUTURE_II==2] = 3 #Recode Medicare so that it and Social Security are harmonized npes$MED_FUTURE_II[npes$MED_FUTURE_II==1] = 2 npes$MED_FUTURE_II[npes$MED_FUTURE_II==3] = 1 MED_FUTURElevels=c(1:2,77,99) MED_FUTURElabels=c("Change the Program","Keep Program as Is","DK","Refused") npes$MED_FUTURE_II=factor(npes$MED_FUTURE_II,levels=MED_FUTURElevels,labels=MED_FUTURElabels,exclude=NULL) # # Specify the design: strata, PSUs, and weights. # Note that cases are PSUs. # Case identifiers are unique across all strata. # Reponses to Wave I and Wave II are represented by different variables within a case. # npes.design<-svydesign(ids=~CASE_ID,weights=~WAVE1_WT,strata=~VSTRATUM,data=npes) # #Calculate and display estimated percents and standard errors for Table 1 # t1=svymean(~CAN_PREF_I,design=npes.design) Table1=round(ftable(t1)*100, 2) attr(Table1, "dimnames")[[1]] <- gsub("CAN_PREF_I", "", attr(Table1, "dimnames")[[1]]) attr(Table1, "dimnames")[[2]] <- c("Mean", "SE") prn(Table1, "Table 1. Candidate Preference: 2012 NORC Presidential Election Study\n\n") # #Calculate and display estimated percents and standard errors for Table 1 # t2=svyby( ~CAN_PREF_I, by = ~PARTY_AFFIL_R_I,design=npes.design,FUN=svymean) Table2=round(ftable(t2)*100,2) attr(Table2, "col.vars")[[1]] <- gsub("CAN_PREF_I", " ", attr(Table2, "col.vars")[[1]]) names(attr(Table2, "row.vars")) <- c("", "") attr(Table2, "row.vars")[[2]] <- c("Mean", "SE") prn(Table2,"Table 2. Candidate Preference by Party Affiliation: 2012 NORC Presidential Election Study\n\n") # #Calculate and display estimated percents and standard errors for Table 3 # t3<-svymean(~SOC_SEC_I,design=npes.design) Table3=round(ftable(t3)*100, 2) attr(Table3, "dimnames")[[1]] <- gsub("SOC_SEC_I", "", attr(Table3, "dimnames")[[1]]) attr(Table3, "dimnames")[[2]] <- c("Mean", "SE") prn(Table3, "Table 3. Social Security Reform: 2012 NORC Presidential Election Study\n\n") # #Calculate and display estimated percents and standard errors for Table 4 # npesII<-subset(npes,WAVE2_WT>0) npesII.design<-svydesign(ids=~CASE_ID,weights=~WAVE2_WT,strata=~VSTRATUM,data=npesII) t4<-svymean(~MED_FUTURE_II,design=npesII.design) Table4=round(ftable(t4)*100, 2) attr(Table4, "dimnames")[[1]] <- gsub("MED_FUTURE_II", "", attr(Table4, "dimnames")[[1]]) attr(Table4, "dimnames")[[2]] <- c("Mean", "SE") prn(Table4, "Table 4. Medicare Reform: 2012 NORC Presidential Election Study\n\n") # #Calculate and display estimated percents and standard errors for Table 5 # t5=svyby(~SOC_SEC_I,by=~AGE_CAT_I,design=npes.design, FUN=svymean) Table5=round(ftable(t5)*100,2) attr(Table5, "col.vars")[[1]] <- gsub("SOC_SEC_I", "", attr(Table5, "col.vars")[[1]]) names(attr(Table5, "row.vars")) <- c("", "") attr(Table5, "row.vars")[[2]] <- c("Mean", "SE") prn(Table5,"Table 5. Social Security Reform by Respondent Age: 2012 NORC Presidential Election Study\n\n") # #Calculate and display estimated percents and standard errors for Table 6 # t6=svyby(~MED_FUTURE_II,by=~AGE_CAT_I,design=npesII.design, FUN=svymean) Table6=round(ftable(t6)*100,2) attr(Table6, "col.vars")[[1]] <- gsub("MED_FUTURE_II", "", attr(Table6, "col.vars")[[1]]) names(attr(Table6, "row.vars")) <- c("", "") attr(Table6, "row.vars")[[2]] <- c("Mean", "SE") prn(Table6,"Table 6. Medicare Reform by Respondent Age: 2012 NORC Presidential Election Study\n\n") # #Exit R # q()