R:更改 data.frame returns 无效因子级别警告的单个值
R: change single value of data.frame returns invalid factor level warning
我的问题是 this and this 个问题的组合。
我有一个数据框:
df <- data.frame("ID" = c(1,2,3,4),
"char" = c("a","b","c","d"))
我想更改单个值,例如
df[1,1] <- 10
正在运行。当我尝试这个时
df[2,2] <- "f"
或
df$char[1] <- "f"
或
df$char[1] <- as.character("f")
我收到以下警告:
"Warning message:
In `[<-.factor`(`*tmp*`, 2, value = c(1L, NA, 3L, 4L)) :
invalid factor level, NA generated"
如何更改 "char" 栏中的内容?
我们可以先包含levels
然后再赋值
df$char <- factor(df$char, levels = c(levels(df$char), "f"))
df[2,2] <- "f"
我的问题是 this and this 个问题的组合。
我有一个数据框:
df <- data.frame("ID" = c(1,2,3,4),
"char" = c("a","b","c","d"))
我想更改单个值,例如
df[1,1] <- 10
正在运行。当我尝试这个时
df[2,2] <- "f"
或
df$char[1] <- "f"
或
df$char[1] <- as.character("f")
我收到以下警告:
"Warning message:
In `[<-.factor`(`*tmp*`, 2, value = c(1L, NA, 3L, 4L)) :
invalid factor level, NA generated"
如何更改 "char" 栏中的内容?
我们可以先包含levels
然后再赋值
df$char <- factor(df$char, levels = c(levels(df$char), "f"))
df[2,2] <- "f"