# Hack: How to Convert all Character Variables to Factors

[This article was first published on

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

**R – Predictive Hacks**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Let’s say that we want to convert all Character Variables to Factors and we are dealing with a large data frame of many columns which means that is not practical to convert them one by one. Thus, our approach is to detect the “**char**” variables and to convert them to “Factors”.

Let’s provide a toy example:

df<-data.frame(Gender = c("F", "F", "M","M","F"), Score = c(80, 70, 65, 85, 95), Type = c("A","B","C","B","B"))

As we can see, the `Gender`

and `Type`

are `char`

variables. Let’s convert them to factors.

df[sapply(df, is.character)] <- lapply(df[sapply(df, is.character)], as.factor)

As we can see, we managed to convert them. Now, you can also rename and relevel the factors.

To

**leave a comment**for the author, please follow the link and comment on their blog:**R – Predictive Hacks**.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.