Skip to content
Prev 274771 / 398503 Next

control the conversion of factor to numeric

On Oct 18, 2011, at 7:35 AM, Martin Batholdy wrote:

            
I think you want to first change the ordering of the levels and then  
convert as desired.

 > levels(x) <- c("slightly disagree", "disagree", "slightly agree",  
"agree")
 > x
  [1] slightly disagree disagree          slightly agree    agree
  [5] slightly disagree disagree          slightly agree    agree
  [9] slightly disagree disagree          slightly agree    agree
[13] slightly disagree disagree          slightly agree    agree
[17] slightly disagree disagree          slightly agree    agree
Levels: slightly disagree disagree slightly agree agree

#  Now choose hoe to convert

 > as.numeric(x)
  [1] 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
 > as.character(x)
  [1] "slightly disagree" "disagree"          "slightly agree"     
"agree"
  [5] "slightly disagree" "disagree"          "slightly agree"     
"agree"
  [9] "slightly disagree" "disagree"          "slightly agree"     
"agree"
[13] "slightly disagree" "disagree"          "slightly agree"    "agree"
[17] "slightly disagree" "disagree"          "slightly agree"    "agree"
David Winsemius, MD
West Hartford, CT