# converting the string columns in a data.frame to factors?

3 messages
Open this post in threaded view
|
Report Content as Inappropriate

## converting the string columns in a data.frame to factors?

 Dear All, I'm not sure if I understand the parameter stringsAsFactors correctly. I'm trying to convert the string columns in aframe1 to factors. But it seems stringsAsFactors=T in as.data.frame() doesn't do anything. Could anybody let know what is the correct way to converting strings to factors? > aframe1=data.frame(x=LETTERS[1:10], y=LETTERS[1:10], stringsAsFactors=F) > aframe2=as.data.frame(aframe1, stringsAsFactors=T) > > str(aframe1) 'data.frame': 10 obs. of  2 variables:  \$ x: chr  "A" "B" "C" "D" ...  \$ y: chr  "A" "B" "C" "D" ... > str(aframe2) 'data.frame': 10 obs. of  2 variables:  \$ x: chr  "A" "B" "C" "D" ...  \$ y: chr  "A" "B" "C" "D" ... > Thanks, John         [[alternative HTML version deleted]] ______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide http://www.R-project.org/posting-guide.htmland provide commented, minimal, self-contained, reproducible code.
Open this post in threaded view
|
Report Content as Inappropriate

## Re: converting the string columns in a data.frame to factors?

 Hi John, Use factor(): aframe2\$x <- factor(aframe2\$x) Or, for all columns at once (there might be an easier solution): aframe2 <- as.data.frame(lapply(aframe1, factor)) see ?factor HTH, Ivan Le 2/28/2011 18:13, John Edwards a écrit : > Dear All, > > I'm not sure if I understand the parameter stringsAsFactors correctly. I'm > trying to convert the string columns in aframe1 to factors. But it > seems stringsAsFactors=T in as.data.frame() doesn't do anything. Could > anybody let know what is the correct way to converting strings to factors? > >> aframe1=data.frame(x=LETTERS[1:10], y=LETTERS[1:10], stringsAsFactors=F) >> aframe2=as.data.frame(aframe1, stringsAsFactors=T) >> >> str(aframe1) > 'data.frame': 10 obs. of  2 variables: >   \$ x: chr  "A" "B" "C" "D" ... >   \$ y: chr  "A" "B" "C" "D" ... >> str(aframe2) > 'data.frame': 10 obs. of  2 variables: >   \$ x: chr  "A" "B" "C" "D" ... >   \$ y: chr  "A" "B" "C" "D" ... > Thanks, > John > > [[alternative HTML version deleted]] > > ______________________________________________ > [hidden email] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html> and provide commented, minimal, self-contained, reproducible code. > -- Ivan CALANDRA PhD Student University of Hamburg Biozentrum Grindel und Zoologisches Museum Abt. Säugetiere Martin-Luther-King-Platz 3 D-20146 Hamburg, GERMANY +49(0)40 42838 6231 [hidden email] ********** http://www.for771.uni-bonn.dehttp://webapp5.rrz.uni-hamburg.de/mammals/eng/1525_8_1.php______________________________________________ [hidden email] mailing list https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide http://www.R-project.org/posting-guide.htmland provide commented, minimal, self-contained, reproducible code.