Dr Glenna Nightingale
Glenna Nightingale née Evans
# For this code to run you would need to have the UKHLS waves saved in your working folder (.tab)
#-----
#UKHLS
#-----
ukhls <- data.frame(matrix(ncol = 12))
names(ukhls) = c("pidp","age","sex","gor","nssec","ed",
"mar","ethnic","move","hid","htype","waveno")
for(i in 1:6){
wave_number = paste(letters[i],"indresp.tab",sep="_")
wave = (read.csv(wave_number,header =TRUE,fill=TRUE,sep="\t"))
age = paste(letters[i],"age_cr",sep="_")
sex = paste(letters[i],"sex",sep="_")
gor = paste(letters[i],"gor_dv",sep="_")
nssec = paste(letters[i],"jbnssec_dv",sep="_")
ed = paste(letters[i],"qfhigh",sep="_")
mar = paste(letters[i],"marstat",sep="_")
ethnic = paste(letters[i],"racel",sep="_")
move = paste(letters[i],"mvyr",sep="_")
hid = paste(letters[i],"hidp",sep="_")
htype = paste(letters[i],"hhtype_dv",sep="_")
wave_data = wave[c("pidp",age,sex,gor,nssec,ed,mar,ethnic,move,hid,htype)]
wavenumber = 18+i
wave_data$waveno = rep(wavenumber,length(wave_data[,1]))
names(wave_data) = c("pidp","age","sex","gor","nssec","ed",
"mar","ethnic","move","hid","htype","waveno")
ukhls = rbind(ukhls,wave_data)
}
ukhls = ukhls[-1,]
ukhls = ukhls[ukhls>0,]
ukhls$mar = as.factor(ukhls$mar)
ukhls$waveno = as.factor(ukhls$waveno)
# sample crosstabs
explore_partnerships = CrossTable(ukhls$mar,ukhls$waveno)$prop.col
# sample export to Excel .csv
# sample plot: marital status levels per UKHLS wave
ggplot(data = ukhls)+
geom_bar(mapping = aes(x=waveno,fill=mar),
position="dodge")
#-----------------------------