[R] SAS-like method of recoding variables?
Frank E Harrell Jr
f.harrell at vanderbilt.edu
Tue Jun 23 15:08:37 CEST 2009
Dieter Menne wrote:
>
>
> P.Dalgaard wrote:
>>
>>> IF TYPE='TRUCK' and count=12 THEN VEHICLES=TRUCK+((CAR+BIKE)/2.2);
>> vehicles <- ifelse(TYPE=='TRUCK' & count=12, TRUCK+((CAR+BIKE)/2.2), NA)
>>
>>
>
> Read both versions to an audience, and you will have to admit that this is
> one of the cases where SAS is superior.
Here's a case where SAS is clearly not superior:
IF type='TRUCK' AND count<12 THEN vehicles=truck+(car+bike)/2.2;
If count is missing, the statement is considered TRUE and the THEN is
executed. This is because SAS considers a missing as less than any
number. This resulted in a significant error, never corrected, in a
widely cited New England Journal of Medicine paper.
Frank
>
> Dieter
>
>
--
Frank E Harrell Jr Professor and Chair School of Medicine
Department of Biostatistics Vanderbilt University
More information about the R-help
mailing list