Here is an example using the R survey package and the variable SEX
Download PUMS data (using API)
with variable SEX PWGTP and paste0("PWGTP",seq(1,80)) and save in data.frame pums
(SEX 1=male 2=female)
Create an indicator variable for the category "male"
pums$male<-as.numeric(pums$SEX==1);
require(survey)
design<-svrepdesign(ids=~1,data=pums$male,weights=pums$PWGTP,repweights=pums[,paste0("PWGTP",seq(1,80))])
sm<-svymean(~male,design);
mean SE
male 0.45799 0.0094
For an indicator (0/1) variable the mean is just the proportion.
MoE<-sqrt(as.numeric(attr(sm,"var")))*qnorm(0.95);
print(MoE)
0.01200602