[R] using ifelse with surprising results
hadley wickham
h.wickham at gmail.com
Fri Oct 17 23:48:45 CEST 2008
On Fri, Oct 17, 2008 at 3:50 PM, <Steve_Friedman at nps.gov> wrote:
>
> Thanks for the gracious assistance in advance
>
> I'm working on a non-metric scaling problem and am calculating the distance
> for input to isoMDS
>
> Here is the code
>
> library(MASS)
> vegdata <- tapply(Percent, list(PRIMARY_VE, MASTERID), sum)
> x.mat <- matrix(x, nrow=40, ncol=2750, byrow=TRUE, dimnames =
> c(dimnames(x)[1], dimnames(x)[2]))
>
>
> vegdata.dd <- dist(x)
> vegdata.dd <- ifelse(vegdata.dd==NA, 0.01, x.dd)
> vegdata.dd
>
> Everything works as expected until I try to replace the NA values in the
> distance matrix.
> the ifelse statement converts the entire dataset to NA.
>
> What am I doing incorrectly?
What does NA == NA equal? This is not intuitive (at first!) but very
important when dealing with NAs.
Hadley
--
http://had.co.nz/
More information about the R-help
mailing list