[R] rowSums() and is.integer()
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Nov 21 10:09:41 CET 2007
On Wed, 21 Nov 2007, Robin Hankin wrote:
>
> On 21 Nov 2007, at 08:30, Prof Brian Ripley wrote:
>
>> On Tue, 20 Nov 2007, Tim Hesterberg wrote:
>>
>>> I wrote the original rowSums (in S-PLUS).
>>> There, rowSums() does not coerce integer to double.
>>
>> Actaully, neither does R. It computes a double answer but does no coercion
>> per se.
>>
>>> However, one advantage of coercion is to avoid integer overflow.
>>
>> Indeed, as I told Robin Hankin privately, that was the design reason.
>>
>
>
> Brian Ripley also reminded me that the sum() of integers is an integer,
> behaviour that I find desirable.
>
> The reason for my starting this thread is that
> sometimes I actually *want* sums of
> integers to overflow: my interest is in exact computations
> where I must be absolutely certain that there can be no rounding error.
>
> If the sum cannot be represented
> in integers, I want this fact to be flagged with extreme vigour as it signals
> what
> might be catastrophic loss of precision.
Doubles hold integers to a much higher precision (up to 2^53-1), so you
can just check if any of the results exceed .Machine$integer.max. It's
very unlikely that you are summing enough integers for there to be a
possibility of floating-point imprecision in an intermediate sum.
>
> At least, that's my current thinking.
>
>
>
> best wishes
>
>
> rksh
>
>
>>>
>>> Tim Hesterberg
>>>
>>>> ... So, why does rowSums() coerce to double (behaviour
>>>> that is undesirable for me)?
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>
>> --
>> Brian D. Ripley, ripley at stats.ox.ac.uk
>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>> University of Oxford, Tel: +44 1865 272861 (self)
>> 1 South Parks Road, +44 1865 272866 (PA)
>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>
> --
> Robin Hankin
> Uncertainty Analyst
> National Oceanography Centre, Southampton
> European Way, Southampton SO14 3ZH, UK
> tel 023-8059-7743
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list