[R] problems with coercing a factor to be numeric

D. Rizopoulos d.rizopoulos at erasmusmc.nl
Wed Jan 23 10:39:24 CET 2013


Check R FAQ 7.10: How do I convert factors to numeric?


I hope it helps.

Best,
Dimitris


On 1/23/2013 10:33 AM, Francesco Sarracino wrote:
> Dear R listers,
>
> I am trying to compute the mean of a dummy variable that is encoded as a
> factor. However, even though the levels of my factor are 0 - 1, when I
> compute the mean (after coercing the factor to be
> numeric), R changes 0 into 1 and 1 into yes, thus altering my expected
> result.
>
> Please, consider the following working example:
> pp <- rep(0:1, 10)
> pp <- factor(pp, levels=(0:1), labels=c("no","yes"))
> mean(pp) #this won't work because the argument is not numeric or logical
> mean(as.integer(pp)) # this computes the average, but not on the range 0-1,
> but 1-2. Indeed, the result is 1.5 and not 0.5 as expected.
>
> What am I doing wrong?
> Thanks in advance for your kind support,
> f.
>
>

-- 
Dimitris Rizopoulos
Assistant Professor
Department of Biostatistics
Erasmus University Medical Center

Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands
Tel: +31/(0)10/7043478
Fax: +31/(0)10/7043014
Web: http://www.erasmusmc.nl/biostatistiek/


More information about the R-help mailing list