DATA MINING
Desktop Survival Guide by Graham Williams |
|||||
Factors |
> ds <- data.frame(age=c(34, 56, 23, 72, 48), risk=c("high", "low", "high", "low", "high")) > ds age risk 1 34 high 2 56 low 3 23 high 4 72 low 5 48 high > levels(ds$risk) [1] "high" "low" |
By default levels within a factor are not ordered:
> ds$age[1] < ds$age[2] [1] TRUE > ds$risk[1] < ds$risk[2] [1] NA Warning message: < not meaningful for factors in: Ops.factor(ds$risk[1], ds$risk[2]) |
We can order the levels using the ordered function:
> ds$risk <- ordered(ds$risk) > levels(ds$risk) [1] "high" "low" > ds$risk[1] < ds$risk[2] [1] TRUE |
You can change the names of the levels by assigning to the
levels call:
> levels(ds$risk) <- c("upper", "lower") > ds age risk 1 34 upper 2 56 lower 3 23 upper 4 72 lower 5 48 upper |