【问题标题】:Plotting a categorical variable against another categorical variable针对另一个分类变量绘制一个分类变量
【发布时间】:2023-03-31 17:22:01
【问题描述】:

我正在比较不同的聚类方法,我想看看两种不同的方法(或参数集)是否定义了相似的聚类。我的集群被定义为数据框中的分类因素(分类变量)。

如果我使用plot()x 是分类变量,y 是连续变量,我会得到一个 箱线图。如果我也这样做,但 y 是另一个分类变量,我会得到一些奇怪的 条形图(下图)。您如何解读这位情节之王?

在这个图中,x (df$category1) 有 13 个级别:

[1] "A" "B" "C" "D" "cluster1" "cluster5" [7] "cluster2" "cluster8" "cluster0" "cluster6" "cluster4" "cluster3" [13] "cluster7"

y (df$category2) 只有 12 个级别:

[1] "A" "B" "C" "D" "cluster5" "cluster0" [7] "cluster4" "cluster2" "cluster3" "cluster6" "cluster1" "cluster7"

两列之间的 A、B、C 和 D 相同,其余的如果集群不一定相同,因为不同集群运行的结果。

编辑:使用的代码是plot(df$category1, df$category2)

【问题讨论】:

  • 你用什么代码来创建这个?
  • plot(df$category1, df$category2)
  • 同时描述你希望情节讲述的故事。
  • @pedrosaurio:这仍然无法重现您的问题。您需要提供样本数据。对于两个分类变量,你会得到一个脊椎图,尽管默认的脊椎图看起来不像你的情节。

标签: r plot


【解决方案1】:

xy 都是因子时,plot 调用spineplot。该函数帮助页面中的示例:

treatment <- factor(rep(c(1, 2), c(43, 41)), levels = c(1, 2),
    labels = c("placebo", "treated"))
improved <- factor(rep(c(1, 2, 3, 1, 2, 3), c(29, 7, 7, 13, 7, 21)),
    levels = c(1, 2, 3),
    labels = c("none", "some", "marked"))

spineplot(improved, treatment)

虽然这看起来和你的情节有点不同。

【讨论】:

  • spineplot 这就是我想知道的。我猜它们看起来不像应有的那样,因为 A、B、C 和 D 的水平在这两个因素中是相同的。
  • 谢谢。这完全是谷歌证明的!你不可能知道作为分类变量的 x,y 的图在 R 中呈现为 spineplot。 (好的,除非你反向搜索每个基本绘图功能的每一页)
【解决方案2】:

不是你问的,而是尝试镶嵌图()。它将生成适合两个分类变量的图形。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-30
    • 2020-05-08
    • 2018-03-17
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多