# Conversion of Several Variables to Factors

December 15, 2011
By

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

..often needed when preparing data for analysis (and usually forgotten until I need it for the next time).
With the below code I convert a set of variables to factors – it could be that there are slicker ways to do it (if you know one let me know!)

`> dat <- data.frame(matrix(sample(1:40), 4, 10, dimnames = list(1:4, LETTERS[1:10])))> str(dat)'data.frame':   4 obs. of  10 variables: \$ A: int  5 34 3 15 \$ B: int  28 25 17 24 \$ C: int  2 12 10 32 \$ D: int  16 27 29 14 \$ E: int  40 7 4 31 \$ F: int  22 30 6 18 \$ G: int  33 36 35 38 \$ H: int  19 21 37 8 \$ I: int  20 11 9 26 \$ J: int  39 13 1 23> > id <- which(names(dat)%in%c("A", "F", "I"))> dat[, id] <- lapply(dat[, id], as.factor)> str(dat[, id])'data.frame':   4 obs. of  3 variables: \$ A: Factor w/ 4 levels "3","5","15","34": 2 4 1 3 \$ F: Factor w/ 4 levels "6","18","22",..: 3 4 1 2 \$ I: Factor w/ 4 levels "9","11","20",..: 3 2 1 4`

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.