[R] How to store and manipulate survey data like this?
Walter Anderson
wandrson01 at gmail.com
Wed Aug 14 00:26:43 CEST 2013
On 08/13/2013 11:41 AM, Siraaj Khandkar wrote:
> On 08/13/2013 12:17 PM, Walter Anderson wrote:
>> I have to process a set of survey data with questions that are formatted
>> like this;
>>
>> 1) Pick your top three breeds (pick 3)
>> 1 Rottweiler
>> 2 Pit Bull
>> 3 German Shepard
>> 4 Poodle
>> 5 Border Collie
>> 6 Dalmation
>> 7 Mixed Breed
>>
>> and the answers are formatted like this:
>>
>> Respondent, Question1
>> 1, "1,4,7"
>> 2, "2,7,5"
>> 3, "6,3,5"
>> 4, ""
>> ...
>>
>> Any suggestions on how to preprocess the file to be able to do things
>> like frequency analysis for breeds?
>>
>
> Here's how I would get started:
>
>
> > survey <- read.csv("survey.csv", as.is=TRUE)
> > survey
> Respondent Question1
> 1 1 1,4,7
> 2 2 2,7,5
> 3 3 6,3,5
> 4 4
> >
> > TipleOrNAs <- function(x) {if (length(x) == 3) x else c(NA, NA, NA)}
> > options <- lapply(strsplit(survey$Question1, ","), TripleOrNAs)
> > options <- matrix(unlist(options), ncol=3, byrow=TRUE)
> > survey2 <- cbind(survey, options)
> > names(survey2) <- c(names(survey), paste("Q1.Opt", 1:3, sep="."))
> > survey2
> Respondent Question1 Q1.Opt.1 Q1.Opt.2 Q1.Opt.3
> 1 1 1,4,7 1 4 7
> 2 2 2,7,5 2 7 5
> 3 3 6,3,5 6 3 5
> 4 4 <NA> <NA> <NA>
>
>
>
>
Thank you!
More information about the R-help
mailing list