levels
On Jul 15, 2020, at 4:31 AM, andy elprama <andy.elprama at gmail.com> wrote:
Dear R-users,
Something strange happened within the command "levels"
R version 3.6.1
name <- c("a","b","c")
values <- c(1,2,3)
data <- data.frame(name,values)
levels(data$name)
[1] "a" "b" "c"
R version 4.0
name <- c("a","b","c")
values <- c(1,2,3)
data <- data.frame(name,values)
levels(data$name)
[1] NULL
What is happening here?
Hi, The default value for 'stringsAsFactors' for data.frame() and read.table() changed from TRUE to FALSE in version 4.0.0, per the news() file: "R now uses a stringsAsFactors = FALSE default, and hence by default no longer converts strings to factors in calls to data.frame() and read.table()." Using 4.0.2: data <- data.frame(name, values, stringsAsFactors = TRUE)
levels(data$name)
[1] "a" "b" "c" If you see behavioral changes from one version of R to another, especially major version increments, check the news() file. Regards, Marc Schwartz