fvalues4levels changes levels of a factor to numeric variable for plotting of the PRC diagram

fvalues4levels(object, fctr)

Arguments

object

a data frame or tibble.

fctr

name of a factor in object (character or symbol)

Value

a numeric named vector (names are levels)

Examples

Design <- data.frame(week=gl(11, 12, labels=c(-4, -1, 0.1, 1, 2, 4, 8, 12, 15, 19, 24)),
                     dose=factor(rep(c(0.1, 0, 0, 0.9, 0, 44, 6, 0.1, 44, 0.9, 0, 6), 11)))
fvalues4levels(Design, "week")
#>   -4   -1  0.1    1    2    4    8   12   15   19   24 
#> -4.0 -1.0  0.1  1.0  2.0  4.0  8.0 12.0 15.0 19.0 24.0 

# fvalues4levels strips the starting k characters so as to find numbers,e.g.
Design$week2 <- factor(paste("Week", Design$week))
levels(Design$week2)
#>  [1] "Week -1"  "Week -4"  "Week 0.1" "Week 1"   "Week 12"  "Week 15" 
#>  [7] "Week 19"  "Week 2"   "Week 24"  "Week 4"   "Week 8"  
fvalues4levels(Design, "week2")
#>  Week -1  Week -4 Week 0.1   Week 1  Week 12  Week 15  Week 19   Week 2 
#>     -1.0     -4.0      0.1      1.0     12.0     15.0     19.0      2.0 
#>  Week 24   Week 4   Week 8 
#>     24.0      4.0      8.0 
# they may not be in increasing order in general,
# but will be after sorting:
sort(fvalues4levels(Design, "week2"))
#>  Week -4  Week -1 Week 0.1   Week 1   Week 2   Week 4   Week 8  Week 12 
#>     -4.0     -1.0      0.1      1.0      2.0      4.0      8.0     12.0 
#>  Week 15  Week 19  Week 24 
#>     15.0     19.0     24.0 
# the resulting numeric variable:
numvar <- fvalues4levels(Design, "week2")[Design[,"week2"]]
summary(numvar)
#>    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
#>  -4.000   0.100   4.000   7.282  15.000  24.000 
length(numvar)== nrow(Design)
#> [1] TRUE