我正在学习R,因此使用imports85.RData(dim 205 x 27)
我的目标是在脚本中将只有部分col.contents的行添加到data.frame。
专栏'制作'是一个有22个等级的因素。
我做了什么:
我复制了第1行并将其附加到d.f.然后我用NA覆盖了第一行。到目前为止,非常好。
现在我的问题:我尝试了几种方法来覆盖,没有任何作用!
cars$make[1] <- "foo"
cars[1,3] <- "foo"
cars[1,3] <- factor("foo")
cars[1,3] <- as.factor("foo")
...
还有更多此类的东西!
答案 0 :(得分:0)
......我到现在才发现:
如果用一个级别覆盖,不包括在因子中,我会先扩展因子,例如:
levels(cars$make <-c(levels(cars$make),'new.foo')
之后可以用例如
覆盖单元格 cars$make[3] <- 'new.foo'
但如果单元格内容为NA,则不起作用! Thx 4帮助!
答案 1 :(得分:0)
解决了! (例子d.f'alfa-romero'中有一个错误的分析)
在变量中建立一个包含所有NA的新观察......
cars <- rbind(cars,cars[1,]); cars[1,] <- NA
......扩大水平并覆盖...
levels(cars$make) <- c(levels(cars$make),'wolga'); cars$make[1] <- 'wolga'
...带来所需的...... result ;-)