Open-end coding converts open-ended responses (like the word "coke") into closed-ended data (like a checkbox question).
This process involves two distinct tasks, building a code frame (checkbox options) and coding the responses (assigning answers to checkboxes). Clients may provide a code frame or base it on prior research. The process can also be iterative (e.g., if "Other" grows too large, new codes may be added.)
You can code open-ends automatically during fielding, or you can request to do this after fielding.
- Automated during fielding: Works best for short, well-defined responses (e.g., brand names).
- After fielding: Used for longer or more complex responses.
Note: Open-end coding is considered a customized survey request. IntelliSurvey programmers should discuss additionally pricing internally.
For large datasets, particularly when coding occurs post-fielding, outsourcing may be an option.
For additional assistance, contact Support or send an email to help@intellisurvey.com.
Example
If responses are short and well-defined (e.g., company or brand names), IntelliSurvey can program automated coding. Below is an example for coding soda brands.
This methodology works for single words or short phrases only.
1. What is the first soda brand that comes to mind? type: text 1OEX. Soda brands [will be populated automatically] type: checkbox translate: n required: n invisible: y 1. Coke 2. Sprite 3. Dr. Pepper 4. Mountain Dew 5. RC Cola 6. Sierra Mist 7. Pepsi 99. Don't Know/Not sure set value question: Q1OEX value: <<END # arrays of strings; each string can contain regular expression syntax my @opt1 = ("coke", "coco", "coca", "koce", "koka", "koke", "Koco", "Koko", "Coc", "Cok"); my @opt2 = ("Sprite", "Sprit", "spite", "Spriet"); my @opt3 = ("Pepper", "Peper", "Pepa", "Dr.", "Peppa", "Peppar", "Pebbar", "Pebar", "Peppr", "Pebber", "Peber"); my @opt4 = ("Mountain", "Mountian", "Moutaine", "Dew", "Drew", "Montane", "Montain"); my @opt5 = ("RC", "RC Cola", "Cola RC", "Cola (RC)", "RC Kola"); my @opt6 = ("Sierra","Mist","Seirra","Siera"); my @opt7 = ("Pepsi", "Pesi", "Pespi", "Peps", "Pepi", "Peppi"); my @opt99 = ("don't know", "dont know", "don't no", "dont no", "none", "donno", "nothing", "non", "null", "dunno", "nada", "na"); my @f; push @f, 1 if grep {$Q1 =~ /$_/i} @opt1; push @f, 2 if grep {$Q1 =~ /$_/i} @opt2; push @f, 3 if grep {$Q1 =~ /$_/i} @opt3; push @f, 4 if grep {$Q1 =~ /$_/i} @opt4; push @f, 5 if grep {$Q1 =~ /$_/i} @opt5; push @f, 6 if grep {$Q1 =~ /$_/i} @opt6; push @f, 7 if grep {$Q1 =~ /$_/i} @opt7; push @f, 99 if grep {$Q1 =~ /$_/i} @opt99; \@f; END condition: $Q1 ne ""
Key considerations:
-
Case Sensitivity: The
/i
flag makes matching case-insensitive (e.g., "COKE" = "coke"). To enforce case sensitivity, remove/i
. - Trade-offs: Avoid using very short strings (e.g., “na” in “Canada Dry” may trigger an incorrect match for “Don’t Know”).
- Variant optimization: If a shorter version covers all cases, longer variations aren't needed (e.g., "Cok" covers "Coke").
Comments
0 comments
Please sign in to leave a comment.