[R] strange question...
Seth Falcon
sfalcon at fhcrc.org
Wed Feb 1 22:47:45 CET 2006
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
More information about the R-help
mailing list