Hello Jing Shen,
The Census question and the Understanding Society questions are slightly different.
In the 2011 Census, the question is "What is your religion?" The proportion with "no religion" among 16+ year olds in 2011 Census for England and Wales: 10909996/45496780 = 0.24 and so the proportion with any religion is 0.76
In Understanding Society there are 2 questions asked of 16+ year olds.
1. a_oprlg, "Do you belong to a religion?"
2. If they say no (a_oprlg=2), then they are asked, a_oprlg0 "which religion were you brought up in?" where one of the options is "no religion" (a_oprlg0=1)
Not everyone who was brought up in a religion considers belonging to that religion now (that is, at the time of the interview). As the Census question does not ask about belonging, respondents could interpret that to mean either the religion they belong to or were brought up in. So, you could combine these two variables (a_oprlg a_oprlg0) in Understanding Society to produce a religion variable that is more consistent with the Census question:
generat anyreligion=1 if a_oprlg==1|(a_oprlg==2 & a_oprlg0>=2 & a_oprlg0<=15)
replace anyreligion=0 if a_oprlg==2 & a_oprlg0==1
The weighted estimate of the proportion of 16+ year olds living in England and Wales who say that they either belong to a religion OR were brought up in a religion is 83.1
tab anyreligion if inlist(a_country,1,2) [aw=a_indinus_xw]
OR
proportion anyreligion if inlist(a_country,1,2) [pw=a_indinus_xw]
As you can see the discrepancy does not disappears but it is now much less.
Hope this helps.
Best wishes,
Understanding Society User Support Team