possible BUG with as.data.frame() and/or [.data.frame
"Jens Oehlschlägel-Akiyoshi" <jens.oehlschlaegel-akiyoshi@mdfactory.de> writes:
Here is a possible BUG with as.data.frame() and/or [.data.frame which broke
Michael Lapsleys RODBC-Code.
Can anyone confirm it is a bug or a 'feature' of the prototype?
tablename <- "abc"
a <- as.data.frame(cbind("abc", 1:3))
b <- as.data.frame(cbind(tablename, 1:3))
# ok
a
V1 V2 1 abc 1 2 abc 2 3 abc 3 # missing column name
b
tablename 1 abc 1 2 abc 2 3 abc 3 # subsetting ok
b[1,1]
[1] abc Levels: abc # subsetting fails
b[1,2]
Error in [.data.frame(b, 1, 2) : undefined columns selected ##by contrast
data.frame(cbind(tablename, 1:3))
tablename Var.2 1 abc 1 2 abc 2 3 abc 3
It's a prototype "feature"... ... Version 3.4 Release 1 for Sun SPARC, SunOS 5.3 : 1996 ...
tablename <- "abc" b <- as.data.frame(cbind(tablename, 1:3)) b
tablename 1 abc 1 2 abc 2 3 abc 3
b[,2]
Error in "[.data.frame"(b, , 2): undefined columns selected Dumped This is a conspiracy of three things: 1) The deparse.level feature of cbind (which is unsettable, but the internals still behave as if deparse.level=1) which causes a deparsing of simple arguments (i.e. symbols) into colnames, leaving others blank. 2) as.data.frame.matrix expects that if colnames are present, they can just be copied to the names() of the result 3) "[.data.frame" explicitly checks whether a column name is blank after subsetting, and protests if it is.
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 mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._