分配到使用因子

时间:2016-11-02 01:32:33

标签: r subset variable-assignment

让我先说一下这个问题我说我发现使用因子作为指数通常并不理想,因为这个因素会被强制转换为数字,可能并不代表你想要它。

但是,考虑到这一点,我很想在尝试分配一个带有因子的子集的data.frame时遇到以下错误。

采用以下可重现的例子:

alpha <- data.frame('a' = c(1, 2), 'b' = c(4, 3)) index <- factor(c(2, 1)) alpha[index[1], ]

到目前为止一切顺利。似乎索引向量被强制转换为数字并且适当地对alpha data.frame进行子集化。

但是,尝试分配到子集行会产生各种错误

alpha[index[1], ] <- c(1, 2)

&#34; Summary.factor中的错误(2L,na.rm = FALSE):'max'对因子没有意义&#34;

在不同的情况下,我也看到了与min相同的错误消息而不是max。在这里我也得到了

&#34;在Ops.factor(i,0L)中:'&gt; ='对因子没有意义&#34;

由于<-是原始的,因此很难检查表面下发生的事情。有没有人能够了解为什么会发生这种情况?

0 个答案:

没有答案