Skip to content
Prev 157133 / 398506 Next

Repeated factor levels - inconsistency of factor and levels<- functions?

Hello,

I have a vector x containing letters ("a", "b" etc.). Now I want to
convert it to factor and group some letters into one common level. If I do
it by factor function, giving the same label names for all values I want
to group, it doesn't work:
[1] "a" "b" "c" "d" "e"
labels=c("vowel","consonant","consonant","consonant","vowel"))
[1] "vowel"     "consonant" "consonant" "consonant" "vowel"

But, after it, if I update level names by a single assignment, levels with
the same names will group, even when I don't change all of them:
levels to group
[1] "vowel"     "consonant"

I'm rather confused! I think this behavior is double inconsistent. First,
the labeling in factor function should work similarly as in levels<- ,
i.e. they should group levels with the same names either BOTH or NONE.
Second, if I change only one vector item, it should not change anything
else, especially it should not make any "invisible" grouping.

Or am I wrong? Or is it a bug?

Jan Hucin