*Pillar 3 - Analysing VACS data* *Session 3.5 - Constructing and coding sexual violence* *Step by step guide of how to construct sexual violence variables* *In this guide, we will be coding a sexual violence variable using the Cote d'Ivoire VACS data. There are four sexual violence acts you might want to code in the data depending on timeframe, perpetrator and acts. We are going to look at some different examples of how you can code sexual violence. *Note that the structure of the sexual violence questions in the survey is slightly different to that of the physical and emotional violence questions, so remember this as you are creating your variables. ******************************************************************************* *Setting up your data ******************************************************************************* *Cote d'Ivoire only has one dataset for all individuals, but note that some countries have separate datasets for males and females. If they are separate, depending on the analysis you are doing, you can either analyse them separately or merge the datasets before analysing them. *Set your working directory to the file location where you would like to save all files for your project, and load the dataset into stata. *cd "..." use CotedIvoire_pubuse_031522.dta *Make all the variables lower case. This will make it easier to code as Stata is case sensitive and the VACS survey has some variables in upper and some in lower case. rename *, lower ******************************************************************************* *Surveyset your data ******************************************************************************* *Now we need to surveyset our data to account for the complex sampling strategy used in the VACS surveys. *For Cote d'Ivoire, the stratification, cluster, and sample weight variables are strata, psu, EA, and sampleweight, respectively. Note that this varies by survey and you will need to check the variables for your country survey. The data summary file that you will receive with the dataset details this. gen weight=sampleweight svyset psu [pweight=weight], strata(strata) vce(linearized) singleunit(centered) ******************************************************************************* *Generate labels for your variables ******************************************************************************* *Here we generate labels for the variables that we plan to create. You can keep adding to this as you create all your variables, but it can help to have all the labels organised in a separate place to your variables. *Yes/No label (the version in the data is 1=yes, 2=No, 99=Don't know/declined) label define yesno 0 "No" 1 "Yes" 99 "DK/declined", replace *Age of first exposure label define exposureage_4cat 0 "0-5 years" 1 "6-11 years" 2 "12-17 years" 3 "18-24 years" 99 "Don't know/declined", replace // in four categories label define exposureage_3cat 0 "under 12 years" 1 "12-17 years" 2 "18-24 years" 99 "Don't know/declined", replace // in three categories label define exposureage 0 "0-17 years" 1 "18-24 years" 99 "Don't know/declined", replace // in two categories *Demographics label define sex 1 "male" 2 "female" label define age_binary 0"13-17 years" 1"18-24 years" ********************************************************************************** *Create variables your demographics ********************************************************************************** *It can be useful to start by creating or cleaning variables for demographics that you know will be important in your analysis. Age and sex are included here, but there are likely to be more that you will want to code. *Age - this could be a continuous, binary or categorical variable. Here, we create a binary variable for 13-17 year olds vs 18-24 year olds. clonevar age=q2 // this would be a continuous measure of respondent age gen age_binary=0 // this would be a binary variable where 0=13-17 years and 1=18-24 years replace age_binary=1 if inrange(age,18,24) label values age_binary age_binary tab age age_binary // always remember to tabulate your new variable against the existing variable to check for any errors you may have made when creating the variable. *Sex - there is already a variable. Here we label the values of the variable to make it easier to see which group represents males and which represents females. label values sex sex ************************************************************************************** *Creating the violence variables ************************************************************************************** ************************************************************************************** *Example: Lifetime experience of sexual violence from any perpetrator ************************************************************************************** *The VACS measures experience of four acts of sexual violence: touching without permission (SV1), attempted forced sex (SV2), physically forced sex (SV3) and pressured sex (SV4). *For SV2, SV3 and SV4 young people who have ever been partnered are asked separately about perpetration from an intimate partner and anyone else.​ All other young people, who have never been partnered, are asked about perpetration from 'anyone'. *For SV1, everyone is asked the same question – whether they have experienced this form of violence from anyone - but there is no specific question about perpetration from an intimate partner. ​ ************************************************************************************** *STEP 1: For each act of sexual violence (SV1, SV2, SV3 and SV4), construct a measure of lifetime experience of that form of sexual violence by a romantic partner or anyone sel ************************************************************************************** ***SV1: Touching without permission*** *Here, we will construct a variable for lifetime experience of touching without permission (SV1) from anyone. clonevar sv1_touch_ever=q600 // we can clone the original variable then recode those who say 'no' to '0'. This is consistent with how we have coded other violence variables in the course. recode sv1_touch_ever (2=0) replace sv1_touch_ever=. if inlist(q600,99,.,98) // this codes the variable as 'missing' if the respondent responds Don't know or Declined to Answer or was missing for this variable. label values sv1_touch_ever yesno *Then check the variable that you've created tab sv1_touch_ever q600 *Here we tabulate the results and use the svy command to account for the survey sampling settings identified by svyset. svy: tab sv1_touch_ever, obs ci ************************************************************************************** ***SV2: Attempted forced sex*** *Here we will construct a variable for lifetime experience of attempted forced sex from a romantic partner OR from anyone. Remember there are two separate questions for SV2-SV4 gen sv2_attemptsex_ever=0 replace sv2_attemptsex_ever=1 if ( q700a==1| q700b==1) // The individual could have answered yes to experience from either a partner or from anyone else replace sv2_attemptsex_ever=. if inlist(q700a,99,.,98) & inlist(q700b,99,.,98) // this codes the variable as 'missing' if the respondent responds Don't know or Declined to Answer or was missing for both questions. label values sv2_attemptsex_ever yesno *Then check the variable that you've created tab sv2_attemptsex_ever tab q700a tab q700b *Here we tabulate the results and use the svy command to account for the survey sampling settings identified by svyset. svy:tab sv2_attemptsex_ever, obs ci *We can then do the same for SV3 and SV4 ************************************************************************************** **SV3: Physically forced sex gen sv3_forcedsex_ever=0 replace sv3_forcedsex_ever=1 if ( q800a==1| q800b==1) // The individual could have answered yes to experience from either a partner or from anyone else replace sv3_forcedsex_ever=. if inlist(q800a,99,.,98) & inlist(q800b,99,.,98) // this codes the variable as 'missing' if the respondent responds Don't know or Declined to Answer or was missing for both questions. label values sv3_forcedsex_ever yesno *Then check the variable that you've created tab sv3_forcedsex_ever tab q800a tab q800b *Here we tabulate the results and use the svy command to account for the survey sampling settings identified by svyset. svy:tab sv3_forcedsex_ever, obs ci ************************************************************************************** **SV4: Pressured sex gen sv4_pressuredsex_ever=0 replace sv4_pressuredsex_ever=1 if (q900a==1| q900b==1) // The individual could have answered yes to experience from either a partner or from anyone else replace sv4_pressuredsex_ever=. if inlist(q900a,99,.,98) & inlist(q900b,99,.,98) // this codes the variable as 'missing' if the respondent responds Don't know or Declined to Answer or was missing for both questions. label values sv4_pressuredsex_ever yesno *Then check the variable that you've created tab sv4_pressuredsex_ever tab q900a tab q900b *Here we tabulate the results and use the svy command to account for the survey sampling settings identified by svyset. svy:tab sv4_pressuredsex_ever, obs ci ************************************************************************************** *STEP 2: Combine measures of lifetime sexual violence from anyone ************************************************************************************** *Now that we have estimated each act of lifetime sexual violence separately, we may want to combine these variables to look at experience of any lifetime sexual violence from anyone gen sv_any_ever=0 replace sv_any_ever=1 if inlist(1, sv1_touch_ever, sv2_attemptsex_ever, sv3_forcedsex_ever sv4_pressuredsex_ever) // this replaces the variable as 1 if any of the four variables listed in the brackets are coded as 1 replace sv_any_ever=. inlist(., sv1_touch_ever) & inlist(., sv2_attemptsex_ever) & inlist(., sv3_forcedsex_ever) & inlist(., sv4_pressuredsex_ever) // this recodes the variable as missing if an individual is missing data on all four of the sexual violence acts label values sv_any_ever yesno tab sv_any_ever *Here we tabulate the results and use the svy command to account for the survey sampling settings identified by svyset. svy: tab sv_any_ever, obs ci ************************************************************************************** *Stratified by age ************************************************************************************** *Now let's tabulate the variables separately among 13-17 year olds and 18-24 year olds. svy:tab sv1_touch_ever age_binary, obs svy:tab sv2_attemptsex_ever age_binary, obs svy:tab sv3_forcedsex_ever age_binary, obs svy:tab sv4_pressuredsex_ever age_binary, obs svy:tab sv_any_ever age_binary, obs ci