A Kish Grid is a mechanism for randomizing who to interview within a household when going door-to-door. Its purpose is to eliminate bias that can be created by just interviewing whoever happens to answer the door, because younger and older household members are less likely to do this.
Knowing what a Kish Grid looks like, and how it’s read, is helpful for understanding how to script one.
The Kish Grid is read by cross-referencing the Household Sequence number (e.g. 7) against the Number of eligible people in that household (e.g. 4). In this example, the resulting answer is 3. This indicates the interviewer should interview the 3rd youngest eligible person in the household.
The complete Kish Grid script can be downloaded from a link at the end of this article. The extracts below are just a selection of examples to help you understand how the script and variables are constructed.
Setting up the randomizationThis starts with creating arrays for each of the eight columns. Using a household size of 100 provides good scope for randomization.
*VARS EligablePeopleNum1, EligablePeopleNum2, EligablePeopleNum3, EligablePeopleNum4, EligablePeopleNum5, EligablePeopleNum6, EligablePeopleNum7, EligablePeopleNum8
Specify an array of 8 counts. These counts will be used for looping in each column to populate its value. As we have 8 columns to represent a maximum of 8 eligible people in a household, 8 counts are needed.
Set each of count value to 1 as initialization for counting.
*REPEAT 8*PUT Count[?R]*ENDREP
The script will now populate the table by repeating a simple loop 100 times to fill in each row, one after one. In each loop, it fills in each column.
*REPEAT 100*PUT EligablePeopleNum1[?R] *IF [Count <= 2] *PUT EligablePeopleNum2[?R] [Count] *PUT Count [Count+1]*IF [Count >2] *PUT Count *IF [Count <= 3] *PUT EligablePeopleNum3[?R] [Count] *PUT Count [Count+1]*IF [Count >3] *PUT Count *IF [Count <= 4] *PUT EligablePeopleNum4[?R] [Count] *PUT Count [Count+1]*IF [Count >4] *PUT Count *IF [Count <= 5] *PUT EligablePeopleNum5[?R] [Count] *PUT Count [Count+1]*IF [Count >5] *PUT Count *IF [Count <= 6] *PUT EligablePeopleNum6[?R] [Count] *PUT Count [Count+1]*IF [Count >6] *PUT Count *IF [Count <= 7] *PUT EligablePeopleNum7[?R] [Count] *PUT Count [Count+1]*IF [Count >7] *PUT Count *IF [Count <= 8] *PUT EligablePeopleNum8[?R] [Count] *PUT Count [Count+1]*IF [Count >8] *PUT Count *ENDREP
The script will generate a question in the CAPI survey asking how many eligible people the household consists of.
*QUESTION 10 *NUMBER 61L1 *SAVE FamilySize *MAX 8How many people live in this household?
And ask for their names, in ascending age
*QUESTION 2 *FORM *CONTROL Q11 WName them in ascending age (youngest first)1: 1-*ALPHA 71L30 *SAVE Name2: 2-*ALPHA 101L30 *SAVE Name3: 3-*ALPHA 131L30 *SAVE Name4: 4-*ALPHA 161L30 *SAVE Name5: 5-*ALPHA 191L30 *SAVE Name6: 6-*ALPHA 221L30 *SAVE Name7: 7-*ALPHA 251L30 *SAVE Name8: 8-*ALPHA 281L30 *SAVE Name
Let’s look at an example where we’ve just used a random number as the household sequence number.
*PUT HouseHoldSeq [RAN(8)]*PUT HouseHoldSeq [HouseHoldSeq + 1]
Or you can choose a Household Sequence number from your respondent table. In this case, make sure the array sizes are also adjusted in the script.
Next, we refer to this table to find which person should be interviewed.
*VARS ans*IF [FamilySize = 1] *PUT ans [EligablePeopleNum1[HouseHoldSeq]]*IF [FamilySize = 2] *PUT ans [EligablePeopleNum2[HouseHoldSeq]]*IF [FamilySize = 3] *PUT ans [EligablePeopleNum3[HouseHoldSeq]]*IF [FamilySize = 4] *PUT ans [EligablePeopleNum4[HouseHoldSeq]]*IF [FamilySize = 5] *PUT ans [EligablePeopleNum5[HouseHoldSeq]]*IF [FamilySize = 6] *PUT ans [EligablePeopleNum6[HouseHoldSeq]]*IF [FamilySize = 7] *PUT ans [EligablePeopleNum7[HouseHoldSeq]]*IF [FamilySize = 8] *PUT ans [EligablePeopleNum8[HouseHoldSeq]]*PAGEFamily size: *?FamilySizemeans to use array EligablePeopleNum*?FamilySizeHousehold Seq: *?HouseHoldSeqmeans to use row *?HouseHoldSeqSo you should pick the family member *?Name[ans] in the *?ans (-th) position to interview
The following animation gives an idea how it looks from interviewer’s perspective.
We hope this helps you understand how to set up your own Kish Grid in Nfield CAPI, based on our Kish Grid script. If you have any questions or feedback, please don’t hesitate to contact us.
Download Nfield CAPI Kish Grid script
Get notified when we publish new handy tips and important news about Nfield
© 2023 NIPO | Privacy | Cookie disclosure | Sitemap