Re: [Rd] Bug in merge() in R-2.0.0 alpha

From: Peter Dalgaard <p.dalgaard_at_biostat.ku.dk>
Date: Thu 16 Sep 2004 - 02:00:27 EST

Uwe Ligges <ligges@statistik.uni-dortmund.de> writes:

> In some cases, merge() has a problem in R-2.0.0 alpha (2004-09-14):
>
> x <- structure(c("a", "b", "2", "0.2-26", "O", "O"), .Dim = c(2, 3),
> .Dimnames = list(c("1", "2"), c("P", "V", "2")))
>
> y <- structure(c("a", "b", "2", "0.2-25", "O", "O"), .Dim = c(2, 3),
> .Dimnames = list(c("1", "2"), c("P", "V", "1")))
>
> merge(x, y, all.y=TRUE)
>
> Error in "[<-"(`*tmp*`, ri, value = NULL) :
> incompatible types
>
>
> Looks like the NA handling has changed anywhere.

Names handling, more likely:

> v <- structure(list("2" = NA), .Names = "2", class = "data.frame", row.names = "2")
> u <- structure(list("2" = structure(1, .Names = "1", .Label = "O", class = "factor")), .Names = "2", class = "data.frame", row.names = "1")
> uu <- structure(list("2" = structure(1, .Label = "O", class = "factor")), .Names = "2", class = "data.frame", row.names = "1")
> rbind(v,u)

     2
2 <NA>
1 O
> rbind(v,uu)

     2
2 <NA>
1 O
> rbind(u,v)

Error during wrapup: incompatible types
> rbind(uu,v)

     2
1 O
2 <NA>

(Notice that the only difference between u and uu is the .Names bit)

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk)             FAX: (+45) 35327907

______________________________________________
R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Thu Sep 16 02:04:39 2004

This archive was generated by hypermail 2.1.8 : Wed 03 Nov 2004 - 22:45:15 EST