[Rd] sapply improvements
Martin Maechler
maechler at stat.math.ethz.ch
Thu Nov 5 17:30:02 CET 2009
>>>>> Duncan Murdoch <murdoch at stats.uwo.ca>
>>>>> on Thu, 05 Nov 2009 06:24:24 -0500 writes:
> On 05/11/2009 4:05 AM, Martin Maechler wrote:
>>>>>>> "PD" == Peter Dalgaard <p.dalgaard at biostat.ku.dk> on
>>>>>>> Thu, 05 Nov 2009 00:28:51 +0100 writes:
>>
PD> William Dunlap wrote: ...
>> >>>
>> >>> if (x <= 0) NA else log(x)
>> >>>
>> >>> variety otherwise.
>> >>
>> >> Would you only want it to coerce upwards to
>> FUN.VALUES's >> type? E.g., allow sapply(z, length, >>
>> FUN.VALUE=numeric(1)) to return a numeric vector but die
>> >> on sapply(z, function(zi)as.complex(zi[1]), >>
>> FUN.VALUE=numeric(1)) If the latter doesn't die should it
>> >> return a complex or a numeric vector? (I'd say it
>> needs >> to be numeric, but I'd prefer that it died.)
>>
PD> I'd say that it should probably die on downwards
PD> coercion. Getting a double when an integer is expected,
PD> or complex instead of double as you indicate, is a
PD> likely user error. If not, then the user can always
PD> coerce explicitly inside FUN.
>>
>> I agree with Peter: Do allow coercion downwards
> You missed "not", right? I.e. we would never coerce a
> double down to an integer or logical, but coercion in the
> other direction would be fine?
Yes, indeed. I missed and you are right.
Martin
More information about the R-devel
mailing list