【发布时间】:2014-05-10 07:55:45
【问题描述】:
这个答案可能很明显(我希望如此),但我一直只找到令人费解的解决方案。我想做的是根据另一个因素的水平有条件地重新评估一个因素。
这是一个使用 mtcars 数据集的示例:
data(mtcars)
mtcars$gear <- as.factor(mtcars$gear)
mtcars$am <- as.factor(mtcars$am)
table(mtcars$gear, mtcars$am) # examining the levels
levels(mtcars$gear)
# [1] "3" "4" "5"
levels(mtcars$am)
"0" "1"
现在在那些齿轮级别为“5”的汽车中,我如何分配一个新的“齿轮”级别“6” 对于那些“am”级别为“1”的人,同时保留“gear”的因子级别“3”、“4”、“5”?这是一个简单得多的示例,但考虑到我的数据集的复杂性,我更愿意将向量保留为因子(例如,不要转换为数字并返回)。
【问题讨论】: