The DHS Program User Forum
Discussions regarding The DHS Program data and results
Home » Data » Weighting data » Selecting sample within one standard deviation in R (Selecting sample within one standard deviation (help with R))
Selecting sample within one standard deviation in R [message #24064] Tue, 15 February 2022 15:00 Go to previous message
berhardt93 is currently offline  berhardt93
Messages: 6
Registered: September 2021

I'm looking at the Nigeria 2018 DHS. I created a variable "tot_encounters" that calculates the number of sexual encounters reported by an individual in the past 12 months by adding the values from their most recent, second most recent, and third most recent partners. I also created the weighting variable "weight".

I found the mean of the weighted variable:

weighted.mean(yesNUIS$tot_encounters, yesNUIS$weight)

Then I found the standard deviation:

weighted_var <- wtd.var(yesNUIS$tot_encounters, yesNUIS$weight)
weighted_sd <- sqrt(weighted_var)

Weighted mean = 27.78
Standard deviation = 25.57

Now I want to select all observations that fall within one standard deviation (2.21-53.35). When I tried to do this, the sample was 80% of the original sample, not 68% (aka. the number of observations within one standard deviation of the mean):

sdNUIS <- yesNUIS
sdNUIS %<>%
dplyr::filter(tot_encounters > 2.2057 & tot_encounters < 53.3527)

How would I make sure that this filter only includes the 68% within one standard deviation of the weighted mean?


Read Message
Read Message
Previous Topic: Seeking help in level1 and level2 weight generation
Next Topic: Calculating level weight for multicounty data - determining level of alpha to use
Goto Forum:

Current Time: Sun Aug 14 08:04:27 Coordinated Universal Time 2022