l <- c("a", "b", "c", "d")
a <- factor(c("a", "c", "d"), levels = l, ordered = TRUE)
b <- factor(c("c", "b", "a"), levels = l, ordered = TRUE)
pmax(a, b)
## [1] c c d
## Levels: a < b < c < d
c <- factor(c("a", "c", "d"), levels = l, ordered = FALSE)
d <- factor(c("c", "b", "a"), levels = l, ordered = FALSE)
pmax(c, d)
## Warning in Ops.factor(mmm, each): '<' not meaningful for factors
## [1] a c d
## Levels: a b c d