tabulate can accept NA values?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

tabulate can accept NA values?

Martin Morgan
tabulate has

    .C("R_tabulate", as.integer(bin), as.integer(length(bin)),
       as.integer(nbins), ans = integer(nbins), PACKAGE="base")$ans

The implementation of R_tabulate has

  if(x[i] != R_NaInt && x[i] > 0 && x[i] <= *nbin)

and so copes with (silently drops) NA. Perhaps the .C could have
NAOK=TRUE? This is useful in apply'ing tabulate to the rows or columns
of a (large) matrix, where the work-around involves introducing some
artificial NA value (and consequently copying the matrix) outside the
range of tabulate's nbin argument.

Martin  
--
Martin Morgan
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109

Location: Arnold Building M1 B861
Phone: (206) 667-2793

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Reply | Threaded
Open this post in threaded view
|

Re: tabulate can accept NA values?

Robert Gentleman
should be in devel now, NAs are ignored (as are non-integers and things
outside the nbin argument)

Martin Morgan wrote:

> tabulate has
>
>     .C("R_tabulate", as.integer(bin), as.integer(length(bin)),
>        as.integer(nbins), ans = integer(nbins), PACKAGE="base")$ans
>
> The implementation of R_tabulate has
>
>   if(x[i] != R_NaInt && x[i] > 0 && x[i] <= *nbin)
>
> and so copes with (silently drops) NA. Perhaps the .C could have
> NAOK=TRUE? This is useful in apply'ing tabulate to the rows or columns
> of a (large) matrix, where the work-around involves introducing some
> artificial NA value (and consequently copying the matrix) outside the
> range of tabulate's nbin argument.
>
> Martin  

--
Robert Gentleman, PhD
Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M1-B514
PO Box 19024
Seattle, Washington 98109-1024
206-667-7700
[hidden email]

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel