【问题标题】:How to plot a table containing counts by class in R?如何在 R 中按类别绘制包含计数的表?
【发布时间】:2021-12-02 11:57:19
【问题描述】:

你如何在 R 中可视化这种表,其中 x 是类,y 是类中的出现次数? 我想可视化分布,但我所做的只是一个条形图(将 y 放入向量中),因此它不使用 x 的信息。之后我可以添加标签,但有没有更好的方法来继续并直接使用这种格式。 另外,如果我有成千上万的课程,我怎么能用比表中更大的箱子来绘制它们呢? (这里的示例可能只绘制两个类 50)。

x   y
100 1954
90  106
80  700
70  27
60  861
50  32
40  5491
30  936
20  7364
10  408

【问题讨论】:

    标签: r plot


    【解决方案1】:

    按照@Ronak Shah 的说法,您可以制作图表。对于许多课程,您可以使用cut。例如,将您的数据拆分为 >50 和

    df %>%
      mutate(grp = cut(V1,2)) %>%
      ggplot(aes(grp, V2)) + geom_col()
    

    将制作条形图。

    如果您的第一列是数据中的一个因素,您可能需要在此之前添加 as.numeric(first column)

    【讨论】:

      【解决方案2】:

      您可以使用barplot

      barplot(y~x, df)
      

      或在ggplot2

      library(ggplot2)
      ggplot(df, aes(x, y)) + geom_col()
      

      如果您只需要两个类别,您可以创建新列,然后使用aggregate

      df$class <- ifelse(df$x > 50, 'less than 50', 'higher than 50')
      barplot(y~class, aggregate(y~class, df, sum))
      

      【讨论】:

        猜你喜欢
        • 2016-10-17
        • 1970-01-01
        • 2013-11-15
        • 2013-06-06
        • 1970-01-01
        • 2021-11-06
        • 1970-01-01
        • 2020-11-12
        • 1970-01-01
        相关资源
        最近更新 更多