[Rd] [R] which.na
Martin Maechler
maechler at stat.math.ethz.ch
Fri Mar 20 10:46:17 CET 2009
>>>>> "CAPE" == Charles Annis, P E <Charles.Annis at statisticalengineering.com>
>>>>> on Thu, 19 Mar 2009 22:46:10 -0400 writes:
>> ?is.na
>> x <- c(NA, 3, 4, 5, NA)
>> which(is.na(x))
CAPE> [1] 1 5
well, of course.
But note that which.na(.) could be implemented to be
faster (because needing much less memory) than the above,
notably when x is large and has only few NAs
But this now has *REALLY* changed into a topic belonging to
R-devel, not R-help
--> hence I've diverted the thread to there.
I have recently entertained similar thoughts, i.e. wished for R
functions that compute
which( function_returning_logical(..) )
and also
any( function_returning_logical(..) )
directly {on .Internal i.e. C-level} instead of going to
construct the potentially huge logical vector.
For what functions should this happen?
I agree that is.na() is one of them; but then, why not
is.nan() / is.finite()
too?
Instead of defining a slew of such functions
which.foo(), which.bar(), any.foo(), any.bar(), etc,
it would be nice to have a generic interface such as
whichApply(x, is.na)
whichApply(x, is.nan)
anyApply(x, is.na)
where internally, for some functions {in a given internal
table}, the fast shortcut would be used, and for others the
interface would be equivalent to which( thatFunction( x ) )
Martin Maechler, ETH Zurich (and R Core team)
CAPE> Charles Annis, P.E.
CAPE> Charles.Annis at StatisticalEngineering.com
CAPE> phone: 561-352-9699
CAPE> eFax: 614-455-3265
CAPE> http://www.StatisticalEngineering.com
CAPE> -----Original Message-----
CAPE> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
CAPE> Behalf Of Santosh
CAPE> Sent: Thursday, March 19, 2009 9:37 PM
CAPE> To: r-help at r-project.org
CAPE> Subject: [R] which.na
CAPE> Hi R- users
CAPE> I was wondering if there is any function equivalent to which.na used in S+?
CAPE> Thanks much in advance!
CAPE> Regards,
CAPE> Santosh
CAPE> [[alternative HTML version deleted]]
CAPE> ______________________________________________
CAPE> R-help at r-project.org mailing list
CAPE> https://stat.ethz.ch/mailman/listinfo/r-help
CAPE> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
CAPE> and provide commented, minimal, self-contained, reproducible code.
CAPE> ______________________________________________
CAPE> R-help at r-project.org mailing list
CAPE> https://stat.ethz.ch/mailman/listinfo/r-help
CAPE> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
CAPE> and provide commented, minimal, self-contained, reproducible code.
More information about the R-devel
mailing list