当没有真正复制时,出现错误“因子级别[2]被复制”

时间:2018-11-07 17:58:42

标签: r factors

我最近升级到R Studio版本1.1.463。但是,我有几个与因素有关的ggplots问题。这是出现错误的情况之一:

我有一个带有3个变量的数据框(df):

  • 名称(因子,分为3级)
  • 类型(因子,具有35个级别)
  • 组(因子,具有6级)

当我想按因子水平排列数据框(df)时,如下所示

df$Type <- factor(df$Type, levels = df$Type[order(df$Group)])

以便如本例所示绘制geom_tile:

print(ggplot(df, aes(x = factor(Name), y = Type, fill = Group)) +
    geom_tile()

我收到以下错误:

"Error in `levels<-`(`*tmp*`, value = as.character(levels)) : factor level [2] is duplicated"

我已经使用

检查了所有三个变量的因素
levels(df$Name)
levels(df$Group)
levels(df$Type)

,并且它们不是重复的。如果我没有运行此示例中提到的第一行代码,则会生成图,但不会按照我想要的顺序生成(我希望将同一Group的所有Types放在一起。)

如果我在R Studio版本1.0.136上运行图形,则可以正常工作。

对于可能发生的事情,我深表感谢。

0 个答案:

没有答案