The major difference I see is that the TestID
variable in the first version is factor [1, 1]
(a matrix) rather than Factor
(a vector)
First version:
t1 <- data.frame(Day = as.Date("2013-04-27"),
TestID = "Total", VarID = "Total")
rbind(t1,t1)
Convert to second version:
t2 <- t1
dim(t2$TestID) <- c(1,1)
str(t2$TestID)
## factor [1, 1] Total
## - attr(*, "levels")= chr "Total"
rbind(t2,t2)
## Error in NextMethod() : invalid value
Fix the mangled version:
t3 <- t2
t3$TestID <- drop(t3$TestID)
rbind(t3,t3) ## works