添加值后保留空因子的级别

时间:2017-10-11 13:03:04

标签: r r-factor

这是一个非常基本的问题,但我没有得到奇怪行为的原因(在我的头顶)。您能否在添加值(var2)后评论因子var2 <-c(var2, value)成为字符向量的原因?

df <- data.frame(var1 = sample(LETTERS[1:5],100, replace = T))

for(i in seq(from = 1, to = 25, by = 5)){
  var2 <- factor(levels = unique(df$var1))
  str(var2)
  kIndices <- df %>% ungroup() %>% rowid_to_column() %>% group_by(var1) %>% 
    filter(n() > i) %>% ungroup() %>% select(rowid) %>% unlist(use.names = F)
  str(var2)
  for(j in kIndices){
    value <- sample(LETTERS[1:4],1)
    #value <- as.factor(value)
    var2 <-c(var2, value)
  }
  str(var2)
}

添加后如何保存?我的意思是在第一个语句var2 <- factor(levels = unique(df$var1))之后有5个级别,即使在这个var2 <-c(var2, value)语句之后也是如此,不管后面的语句中有多少个值。

0 个答案:

没有答案