Survey Rake Weights

Surveys
POL 307

Rake weights are one way of adjusting for survey nonresponse by iteratively updating the weights one variable at a time until they converge. The basic methodology is as follows:

Before starting, identify the population proportion in each category of each weighting variable, and set every respondent’s weight to 1.

  1. For the first variable, calculate each category’s sample proportion using the current weights.
  2. For each category, calculate its adjustment factor: population proportion divided by weighted sample proportion.
  3. Multiply each respondent’s current weight by the adjustment factor for their category.
  4. Move to the next variable and repeat Steps 1–3 using the updated weights.

Adjusting all variables completes one full pass. Then return to Step 1 and begin another pass using the weights you’ve just calculated.

We repeat this process because adjusting for one variable can move the distribution of another variable further from its population value. We correct this by readjusting for that variable on the next pass. Each pass will generally require smaller and smaller adjustments.

We stop when the weighted sample proportions change by less than a chosen tolerance between passes—for example, 0.1 percentage points. At this point, the weights are said to have converged.

Example

Table 1 shows the education, age, and partisan breakdown in a simulated population and in our final sample. As is common, college-educated and older voters were much more likely to respond. Because partisanship is related to both age and education, our estimate of partisanship is also biased. We can reduce this bias by using rake weights to adjust on the Age and Education variables.

Table 1
(a) Population
CategoryPercent
No College66%
College34%
Young30%
Middle50%
Old20%
Democrat36%
Independent25%
Republican39%
(b) Sample
CategoryPercent
No College32%
College68%
Young19%
Middle46%
Old34%
Democrat44%
Independent18%
Republican37%
N984

Initial Setup

As described above, raking is an iterative process. Table 2 sets up the beginning of the process. It includes the population proportions for the variables used in the weights. It also shows the sample proportion of each age category, calculated using an initial weight of 1 for every observation. Finally, the adjustment is simply \(\frac{\text{Pop}}{\text{Sample}}\). The rows below show four observations from the data so we can track how their weights change during the process.

Table 2: Initial Weights Setup
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.3435--
Adjustment-1.54761.08000.5828--
No College-Middle1.0000-----
No College-Young1.0000-----
No College-Young1.0000-----
College-Middle1.0000-----

First Variable: Age

We will start by adjusting on the Age variable. We could adjust all Age categories at once, but to make the process clearer, we will go through them one at a time. The first category is Young: the population target is 30.04%, while the current sample estimate is 19.41%. The adjustment factor is therefore 1.548. To make this adjustment, we multiply the current weight (1 for everyone) by this factor for every Young respondent and leave the other weights unchanged. Table 3 shows the new weights in the Age: Young column.

Table 3: Adjusted for Age - Young Once
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.3435--
Adjustment-1.54761.08000.5828--
No College-Middle1.00001.0000----
No College-Young1.00001.5476----
No College-Young1.00001.5476----
College-Middle1.00001.0000----

Next, we adjust the Middle category of Age. Here the adjustment factor is closer to 1: 1.080. Again, we apply it only to respondents in the Middle category, as shown in Table 4.

Table 4: Adjusted for Age - Middle Once
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.3435--
Adjustment-1.54761.08000.5828--
No College-Middle1.00001.00001.0800---
No College-Young1.00001.54761.5476---
No College-Young1.00001.54761.5476---
College-Middle1.00001.00001.0800---

Next, we repeat this for the Old category. In this case, we adjust the weights down by multiplying them by 0.583. None of the example rows are in this category, so their weights do not change, although the weights of Old respondents elsewhere in the data are adjusted (Table 5).

Table 5: Adjusted for Age - Old Once
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.3435--
Adjustment-1.54761.08000.5828--
No College-Middle1.00001.00001.08001.0800--
No College-Young1.00001.54761.54761.5476--
No College-Young1.00001.54761.54761.5476--
College-Middle1.00001.00001.08001.0800--

Second Variable: Education

Now that we have adjusted for Age, we recalculate the proportion of the sample in each Education category, this time using the weights we just created. After the Age adjustments, 30.92% of the weighted sample has no college degree and 69.08% has a college degree. These numbers are only slightly different from the initial estimates of 31.61% and 68.39%. Table 6 shows these proportions and the new adjustment factors.

Table 6: Setup for Education Adjustment
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.34350.30920.6908
Adjustment-1.54761.08000.58282.14520.4874
No College-Middle1.00001.00001.08001.0800--
No College-Young1.00001.54761.54761.5476--
No College-Young1.00001.54761.54761.5476--
College-Middle1.00001.00001.08001.0800--

We apply these adjustments the same way as before. This time, however, we multiply the adjustment factors by the weights we just created rather than by the initial weights of 1. In Table 7, we multiply the weights for the first three example rows by 2.145.

Table 7: Adjusted for Education - No College Once
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.34350.30920.6908
Adjustment-1.54761.08000.58282.14520.4874
No College-Middle1.00001.00001.08001.08002.3169-
No College-Young1.00001.54761.54761.54763.3199-
No College-Young1.00001.54761.54761.54763.3199-
College-Middle1.00001.00001.08001.08001.0800-

Next, we adjust the weights for college-educated respondents (the second Education category). The last column of Table 8 shows that each weight now depends on the respondent’s category for both Age and Education. Two observations have the same values on both variables, so their weights are the same. The other two observations are both middle-aged but differ in education, so their weights also differ.

Table 8: Adjusted for Education - College Once
InitialAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.19410.46240.34350.30920.6908
Adjustment-1.54761.08000.58282.14520.4874
No College-Middle1.00001.00001.08001.08002.31692.3169
No College-Young1.00001.54761.54761.54763.31993.3199
No College-Young1.00001.54761.54761.54763.31993.3199
College-Middle1.00001.00001.08001.08001.08000.5264

Second Pass

We’ve now completed one full pass, but we are not done. Adjusting for education after age has moved the age distribution away from its targets. For example, the weights after the first pass give an estimate of 26.11% young people, which is close to the population target of 30.04% but not exactly right. Because of this, we need to readjust on Age. The adjustments and calculations are in Table 9.

Note

In this simulated population, education and age are independent, so the adjustments do not affect each other very much. The more strongly the weighting variables are associated with each other, the more adjusting for one will affect the distribution of another.

Table 9: Setup for Second Age Adjustment
First PassAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.26110.53820.2007--
Adjustment-1.15030.92790.9976--
No College-Middle2.3169-----
No College-Young3.3199-----
No College-Young3.3199-----
College-Middle0.5264-----

In Table 10, we make these adjustments, slightly increasing the weights of young and old respondents while decreasing the weights of middle-aged respondents.

Table 10: Second Age Adjustment
First PassAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.26110.53820.2007--
Adjustment-1.15030.92790.9976--
No College-Middle2.31692.31692.14992.1499--
No College-Young3.31993.81913.81913.8191--
No College-Young3.31993.81913.81913.8191--
College-Middle0.52640.52640.48850.4885--

We use these weights to re-estimate the proportions of respondents with and without a college degree and then adjust for Education. Table 11 shows this complete step. Again, the adjustments are very small.

Table 11: Second Education Adjustment
First PassAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.26110.53820.20070.65780.3422
Adjustment-1.15030.92790.99761.00830.9840
No College-Middle2.31692.31692.14992.14992.16782.1678
No College-Young3.31993.81913.81913.81913.85093.8509
No College-Young3.31993.81913.81913.81913.85093.8509
College-Middle0.52640.52640.48850.48850.48850.4806

Third Pass and Convergence

We’ve now completed two full passes of raking, so we start again at the beginning. Table 12 shows that the adjustment factors are essentially 1 for every age category, so the weights appear to have converged quickly. There are several ways to define convergence, and the details are beyond the scope of this guide. In short, we choose a rule for when the weights are “good enough” and additional passes no longer make meaningful improvements.

Table 12: Setup for Third Age Adjustment
Second PassAge: YoungAge: MiddleAge: OldEd: NoEd: Col
Pop-0.30040.49940.20020.66330.3367
Sample Estimate-0.29970.50000.2002--
Adjustment-1.00220.99880.9998--
No College-Middle2.1678-----
No College-Young3.8509-----
No College-Young3.8509-----
College-Middle0.4806-----

Converged Rake Weights

Table 13 compares the population (Table 13 (a)), the initial sample (Table 13 (b)), and the sample weighted after three passes (Table 13 (c)). On the weighting variables, the weighted sample is now within 0.01 percentage points of the population. The partisanship estimates are also much closer to the population values, differing by less than 2 percentage points. This is a best-case scenario: in this simulated data, we know what caused nonresponse (education and age), we know that these variables are related to partisanship, and we have population targets for age and education.

Table 13: Margins Compared
(a) Population
CatPercent
No College66.33%
College33.67%
Young30.04%
Middle49.94%
Old20.02%
Democrat36.33%
Independent24.85%
Republican38.82%
(b) Initial Sample
CatPercent
No College31.61%
College68.39%
Young19.41%
Middle46.24%
Old34.35%
Democrat44.41%
Independent18.39%
Republican37.20%
(c) After Three Rakes
CatPercent
No College66.32%
College33.68%
Young30.04%
Middle49.94%
Old20.02%
Democrat34.34%
Independent26.35%
Republican39.30%

One last point about the limits of rake weights: the weighted estimates match the population margins (the overall distributions of education and age), but there is no guarantee that they will match the joint distribution of those variables. Table 14 shows the percentage of the population and weighted sample in each age-by-education cell. The numbers are fairly close, but they do not match exactly. This is partly because the simulation made one cell (young \(\times\) no college) especially unlikely to respond. Raking on the margins does not directly account for this kind of interaction in nonresponse, although you can account for some interactions by raking on combined categories (for example, age-by-education cells) when population targets for them are available.

Table 14: Crosstabs
(a) Population
Population
AgeNo CollegeCollege
Young20.03%10.01%
Middle33.24%16.70%
Old13.06%6.96%
(b) After Three Rakes
Three Rakes
AgeNo CollegeCollege
Young17.26%12.78%
Middle35.65%14.29%
Old13.42%6.60%