title: creating a factor variable with dplyr?
body: <p>Suppose I have a data frame that looks something like this:</p>
  
  <pre><code>df1=structure(list(Name = structure(1:6, .Label = c("N1", "N2", "N3", 
                                                      "N4", "N5", "N6", "N7"), class = "factor"), sector = structure(c(4L, 
                                                                                                                       4L, 4L, 3L, 3L, 2L), .Label = c("other stuff", "Private for-profit, 4-year or above", 
                                                                                                                                                       "Private not-for-profit, 4-year or above", "Public, 4-year or above"
                                                                                                                       ), class = "factor"), flagship = c(1, 0, 0, 0, 0, 0)), .Names = c("Name", 
                                                                                                                                                                                         "sector", "flagship"), row.names = c(NA, 6L), class = "data.frame")
  </code></pre>
  
  <p>I want to create a new factor variable, "Sector". I can do it in a long way with many lines of code, but I'm sure there is a more efficient way. </p>
  
  <p>Right now this is what I'm doing:</p>
  
  <pre><code>df1$PublicFlag=0
  df1$PublicFlag[df1$sector=="Public, 4-year or above" &amp; df1$flagship==1]=1
  df1$Public=0
  df1$Public[df1$sector=="Public, 4-year or above" &amp; df1$flagship==0]=1
  df1$PrivateNP=0
  df1$PrivateNP[df1$sector=="Private not-for-profit"]=1
  df1$Private4P=0
  df1$Private4P[df1$sector=="Private for-profit, 4-year or above"]=1
  
  library(reshape)
  df2 = melt(df1, id=c("Name", "sector", "flagship"))
  df2 = df2[df2$value==1,c("Name", "sector", "flagship", "variable")]
  library(plyr)
  df2 = rename(df2, c("variable"="Sector"))
  </code></pre>
  
  <p>Thanks for the help!</p>