Using PERWT to get total population

I want to expand my data (2000 census 5%) by the individual frequency weights (PERWT) to get the total US population. In the description for the PERWT it says that there are two “implied decimals”, and when I expand using the “replace new_perwt= perwt/100” (in STATA) I don’t get the total US population. However, if I expand by PERWT (not divided by 100), I get the total US population. Can you explain to me if I’m doing something wrong here? Thanks!

If you are using the .do file that accompanies your data extract, you will not need to make any adjustments to PERWT. The syntax files we provide are already set-up to reformat the data.

Hello! thank you, but that is exactly the issue. The .do file does the adjustment, and the adjusted data does not make the total US population.
//
replace hhwt = hhwt / 100
replace perwt = perwt / 100
//

To be clear, what I want is to expand the data by perwt so that I get the total population. The command I’m using is -
//
expand perwt
//

Sorry for any confusion! Just to be clear, are you running the following code in addition to running the syntax file that IPUMS provides?

replace hhwt = hhwt / 100
replace perwt = perwt / 100

If so, that would be part of the issue. If not, then it seems like the mismatch is due to the expand command and how it functions, in particular that it requires PERWT to be rounded to the nearest integer. Inevitably, this will lead to a mismatch as opposed to applying PERWT using Stata’s weighting options.

I see what I do wrong here. like you said, it looks like I was dividing PERWT by 100 twice. Thank you so much!