> data(iris)# iris3 is first 3 rows of iris> iris3 <- iris[1:3,]# z compares row 1 to each row of iris3 and is correctly computed> z <- c(F,F,F) > for(i in seq(z)) z[i] <- identical(iris3[1,],iris3[i,]) > z[1] TRUE FALSE FALSE # this should do the same but is incorrect> apply(iris3,1,function(x)identical(x,iris3[1,]))1 2 3 FALSE FALSE FALSE What's wrong here? -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
On Sat, 16 Mar 2002 ggrothendieck at yifan.net wrote:> > > data(iris) > > # iris3 is first 3 rows of iris > > iris3 <- iris[1:3,]Not a good choice of name: iris3 is another R dataset. Your iris3 is a data frame.> # z compares row 1 to each row of iris3 and is correctly > computed > > z <- c(F,F,F) > > for(i in seq(z)) z[i] <- identical(iris3[1,],iris3[i,]) > > z > [1] TRUE FALSE FALSE > > # this should do the same but is incorrect > > apply(iris3,1,function(x)identical(x,iris3[1,])) > 1 2 3 > FALSE FALSE FALSE > > What's wrong here?You are not using array as documented. ?apply says Arguments: X: the array to be used. iris3 is not an array, so it it coerced to one via as.matrix> as.matrix(iris3)Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 "5.1" "3.5" "1.4" "0.2" "setosa" 2 "4.9" "3.0" "1.4" "0.2" "setosa" 3 "4.7" "3.2" "1.3" "0.2" "setosa" and that's not the same object as your iris3 -- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, stats.ox.ac.uk/~ripley University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272860 (secr) Oxford OX1 3TG, UK Fax: +44 1865 272595 -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
On Sat, Mar 16, 2002 at 11:58:51PM -0500, ggrothendieck at yifan.net wrote:> > > data(iris) > > # iris3 is first 3 rows of iris > > iris3 <- iris[1:3,] > > # z compares row 1 to each row of iris3 and is correctly > computed > > z <- c(F,F,F) > > for(i in seq(z)) z[i] <- identical(iris3[1,],iris3[i,]) > > z > [1] TRUE FALSE FALSE > > # this should do the same but is incorrect > > apply(iris3,1,function(x)identical(x,iris3[1,])) > 1 2 3 > FALSE FALSE FALSE > > What's wrong here? > > -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- > r-help mailing list -- Read ci.tuwien.ac.at/~hornik/R/R-FAQ.html > Send "info", "help", or "[un]subscribe" > (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch > _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._Could this be because 'apply' expects an 'array' as input (try 'help(apply)') ? Hopin' it helps, Laurent -- -------------------------------------------------------------- Laurent Gautier CBS, Building 208, DTU PhD. Student D-2800 Lyngby,Denmark tel: +45 45 25 24 85 cbs.dtu.dk/laurent -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
> > > apply(iris3,1,function(x)identical(x,iris3[1,])) > > 1 2 3 > > FALSE FALSE FALSE > > > > What's wrong here? > > iris3 is not an array, so it it coerced to one via as.matrix[...]> and that's not the same object as your iris3Thanks. Is there a way to iterate over the rows of a data frame without writing a loop -- that was my original objective. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._