(R 2.9.2 on Windows XP) Turns out that
my.data.frame[c(1,3)] <- list(NULL, NULL) and my.data.frame[c(3,1)] <- list(NULL, NULL) are not the same. Is this expected? Example: d0 <- structure(list(Year = c(2009L, 2009L, 2009L), Season = c(1L, 1L, 1L), Series = c(1L, 1L, 1L), Mst = structure(c(1L, 1L, 1L), .Label = "", class = "factor"), Yield = structure(c(1L, 1L, 1L), .Label = "", class = "factor")), .Names = c("Year", "Season", "Series", "Mst", "Yield"), row.names = c(NA, 3L), class = "data.frame") d1 <- d0 d1[c(3,1)] <- list(1:3, 4:6) print(d1) Year Season Series Mst Yield 1 4 1 1 2 5 1 2 3 6 1 3 d1[c(3,1)] <- list(NULL, NULL) print(d1) Season Series Yield 1 1 1 2 1 2 3 1 3 It appears that the above assignment deletes column 1 from the data frame, then sequentially deletes column 3 (Mst, which was originally column 4 before column 1 was deleted). Compare this to d1 <- d0 d1[c(1,3)] <- list(NULL, NULL) print(d1) Season Mst Yield 1 1 2 1 3 1 Kevin Wright [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.