On 1 Feb 2006, ana.pmartins at ine.pt wrote:> am$e_isell <- factor( with( am, ifelse( e_iacc == 1 & C5 == 1, 1,
> 0)))
>
>
> cbind( am$e_isell[4256], am$C6[4256])
>
> [,1] [,2]
>
> [1,] "2" "1"
>
>
>
> (????????????? :( )
>
>
>
> Does anyone understand why this happens?
A factor is an integer vector with levels. Although there are many
operations one can perform on a factor that will "work" because of
automagic convertion of the factor to its underlying integer vector,
it is rarely useful, IMHO.
The following may help you see what is going on:
f = factor(c(0, 1, 1, 0))
unclass(f)
as.numeric(f)
as.integer(f)
as.character(f)
as.integer(as.character(f))
+ seth