What is the best way to detect whether or not a (potentially large)
matrix contains missing values (NAs) or not? I use
if (sum(is.na(x)) > 0) {...}
are there more efficient ways?
/Ali
Ali -
If all you care about is if there are any missing values
(not how many or where they are), I think it would be a bit
faster to use
if(any(is.na(x))){...}
- Phil Spector
Statistical Computing Facility
Department of Statistics
UC Berkeley
spector at stat.berkeley.edu
On Wed, 20 Oct 2010, Ali Tofigh wrote:
> What is the best way to detect whether or not a (potentially large)
> matrix contains missing values (NAs) or not? I use
>
> if (sum(is.na(x)) > 0) {...}
>
> are there more efficient ways?
>
> /Ali
>
> ______________________________________________
> 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.
>
?complete.cases Sent from my iPhone On Oct 20, 2010, at 18:53, Ali Tofigh <alix.tofigh at gmail.com> wrote:> What is the best way to detect whether or not a (potentially large) > matrix contains missing values (NAs) or not? I use > > if (sum(is.na(x)) > 0) {...} > > are there more efficient ways? > > /Ali > > ______________________________________________ > 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.
A small test indicates that the following may be the fastest method (although all are pretty fast) has.na <- !all(complete.cases(x)) Thanks Jim and Phil for your suggestions. /Ali On Wed, Oct 20, 2010 at 19:03, Jim Holtman <jholtman at gmail.com> wrote:> ?complete.cases > > Sent from my iPhone > > On Oct 20, 2010, at 18:53, Ali Tofigh <alix.tofigh at gmail.com> wrote: > >> What is the best way to detect whether or not a (potentially large) >> matrix contains missing values (NAs) or not? I use >> >> if (sum(is.na(x)) > 0) {...} >> >> are there more efficient ways? >> >> /Ali >> >> ______________________________________________ >> 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. >