R 面_包裹中各组的平均值和观察值

R 面_包裹中各组的平均值和观察值,r,ggplot2,facet-wrap,R,Ggplot2,Facet Wrap,我读了几十篇关于如何在每个facet_wrap中添加标签的帖子,但我希望在这里得到一些帮助,因为我一直在添加一个标签,其中包含数据集中的组平均值(λ)和观察数(k)。我使用了其中的大部分,但在以下项目上遇到了困难: 将各组观察结果的正确平均值和数量添加到刻面中 将平均值四舍五入到两位数 将“平均值”标签更改为正确的希腊字母lambda-unicode(u+03BB) 当前绘图输出: 您的代码有一个问题: 您按PIA\u类型划分,但汇总df按PIA\u项目分组 我不确定这是否是根本原因,因为在

我读了几十篇关于如何在每个
facet_wrap
中添加标签的帖子,但我希望在这里得到一些帮助,因为我一直在添加一个标签,其中包含数据集中的组平均值(λ)和观察数(k)。我使用了其中的大部分,但在以下项目上遇到了困难:

  • 将各组观察结果的正确平均值和数量添加到刻面中
  • 将平均值四舍五入到两位数
  • 将“平均值”标签更改为正确的希腊字母lambda-unicode(u+03BB)
  • 当前绘图输出:
    您的代码有一个问题:

    • 您按
      PIA\u类型划分,但汇总df按
      PIA\u项目分组
    我不确定这是否是根本原因,因为在您的示例数据中,
    PIA_类型
    PIA_项目
    都是相同的,所以我将
    PIA_类型
    更改为两个不同的级别

    创建摘要df时,您可以使用
    n()
    计算观察数,使用
    round
    获得正确的位数,并将lambda表示为
    \U03BB

    df_dztpois <- structure(list(PIA_ITEM = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 
                                                       2L, 2L, 2L, 2L), .Label = c("RX20 1.5t Type 6209-10", "RX20 1.6t Type 6211", 
                                                                                   "RX20 1.6t Type 6221", "RX20 1.8t Type 6213", "RX20 2.0t Type 6215", 
                                                                                   "RX20 2.0t Type 6225", "RX20 2.0t Type 6230"), class = "factor"), 
                                PIA_TYPE = c("6211", "6211", "6211", "6211", "6211", "6212", 
                                             "6212", "6212", "6212", "6212"), DELY_QTY_WINS = c(75, 62, 
                                                                                                57, 57, 67, 57, 53, 70, 70, 60), DELY_QTY_DZTPOIS = c(1.09669678480388e-08, 
                                                                                                                                                      3.8744657910606e-05, 0.000448728658516301, 0.000448728658516301, 
                                                                                                                                                      2.24150656988175e-06, 0.000448728658516301, 0.0023318386482722, 
                                                                                                                                                      3.38775858809732e-07, 3.38775858809732e-07, 0.000108487832825478
                                                                                                )), row.names = c(NA, 10L), class = "data.frame")
    
    library(ggplot2)
    library(dplyr)
    
    df_dztpois_summary <- df_dztpois %>%
      group_by(PIA_TYPE) %>%
      summarize(count = n(),
                mean = mean(DELY_QTY_WINS)) %>%
      mutate(lab = paste("count = ", count, "\n\U03BB = ", round(mean, digits = 2)))
    
    p <- ggplot(data = df_dztpois, aes(x=DELY_QTY_WINS))
    p <- p + geom_line(aes(y=DELY_QTY_DZTPOIS))
    p <- p + facet_wrap( ~ PIA_TYPE, nrow=3, scales = "free")
    p <- p + xlab("Observation") + ylab("Probability")
    p <- p + theme(
      legend.position = "bottom",
      legend.text = element_text(size = 12),
      strip.text.x = element_text(size = 12))
    p <- p + labs(title = "Zero-truncated Poisson distribution of order quantity",
                  subtitle = "Grouped by product (PIA_TYPE)",
                  caption = "Data source: df_dztpois$DELY_QTY_WINS and df_full$DELY_QTY_DZTPOIS")
    p <- p + geom_text(data = df_dztpois_summary, aes(label = lab), x=Inf, y=Inf, hjust=1, vjust=1.2)
    p
    
    
    df_dztpois%
    汇总(计数=n(),
    平均值=平均值(增量数量赢款))%>%
    变异(lab=paste(“count=”,count,“\n\U03BB=”,四舍五入(平均数,位数=2)))
    
    p您的代码有一个问题:

    • 您按
      PIA\u类型划分,但汇总df按
      PIA\u项目分组
    我不确定这是否是根本原因,因为在您的示例数据中,
    PIA_类型
    PIA_项目
    都是相同的,所以我将
    PIA_类型
    更改为两个不同的级别

    创建摘要df时,您可以使用
    n()
    计算观察数,使用
    round
    获得正确的位数,并将lambda表示为
    \U03BB

    df_dztpois <- structure(list(PIA_ITEM = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 
                                                       2L, 2L, 2L, 2L), .Label = c("RX20 1.5t Type 6209-10", "RX20 1.6t Type 6211", 
                                                                                   "RX20 1.6t Type 6221", "RX20 1.8t Type 6213", "RX20 2.0t Type 6215", 
                                                                                   "RX20 2.0t Type 6225", "RX20 2.0t Type 6230"), class = "factor"), 
                                PIA_TYPE = c("6211", "6211", "6211", "6211", "6211", "6212", 
                                             "6212", "6212", "6212", "6212"), DELY_QTY_WINS = c(75, 62, 
                                                                                                57, 57, 67, 57, 53, 70, 70, 60), DELY_QTY_DZTPOIS = c(1.09669678480388e-08, 
                                                                                                                                                      3.8744657910606e-05, 0.000448728658516301, 0.000448728658516301, 
                                                                                                                                                      2.24150656988175e-06, 0.000448728658516301, 0.0023318386482722, 
                                                                                                                                                      3.38775858809732e-07, 3.38775858809732e-07, 0.000108487832825478
                                                                                                )), row.names = c(NA, 10L), class = "data.frame")
    
    library(ggplot2)
    library(dplyr)
    
    df_dztpois_summary <- df_dztpois %>%
      group_by(PIA_TYPE) %>%
      summarize(count = n(),
                mean = mean(DELY_QTY_WINS)) %>%
      mutate(lab = paste("count = ", count, "\n\U03BB = ", round(mean, digits = 2)))
    
    p <- ggplot(data = df_dztpois, aes(x=DELY_QTY_WINS))
    p <- p + geom_line(aes(y=DELY_QTY_DZTPOIS))
    p <- p + facet_wrap( ~ PIA_TYPE, nrow=3, scales = "free")
    p <- p + xlab("Observation") + ylab("Probability")
    p <- p + theme(
      legend.position = "bottom",
      legend.text = element_text(size = 12),
      strip.text.x = element_text(size = 12))
    p <- p + labs(title = "Zero-truncated Poisson distribution of order quantity",
                  subtitle = "Grouped by product (PIA_TYPE)",
                  caption = "Data source: df_dztpois$DELY_QTY_WINS and df_full$DELY_QTY_DZTPOIS")
    p <- p + geom_text(data = df_dztpois_summary, aes(label = lab), x=Inf, y=Inf, hjust=1, vjust=1.2)
    p
    
    
    df_dztpois%
    汇总(计数=n(),
    平均值=平均值(增量数量赢款))%>%
    变异(lab=paste(“count=”,count,“\n\U03BB=”,四舍五入(平均数,位数=2)))
    
    p
    df_-dztpois_摘要
    不包含
    PIA_类型
    ,因此它不包含标签应显示在哪个方面的任何信息。
    df_-dztpois_摘要
    不包含
    PIA_类型
    ,因此,它不包含任何关于标签应该出现在哪个方面的信息。感谢您的及时回答。我注意到我在总结和方面的错误,但正如你所说的,它们只是一个又长又短的版本。
    n()
    对我不起作用,我得到了一个错误:`n()`只能在dplyr谓词中使用。`结果表明,重新启动R解决了n()问题。再次感谢!谢谢你的及时答复。我注意到我在总结和方面的错误,但正如你所说的,它们只是一个又长又短的版本。
    n()
    对我不起作用,我得到了一个错误:`n()`只能在dplyr谓词中使用。`结果表明,重新启动R解决了n()问题。再次感谢!
    > str(df_dztpois)
    'data.frame':   959 obs. of  4 variables:
     $ PIA_ITEM        : Factor w/ 7 levels "RX20 1.5t Type 6209-10",..: 2 2 2 2 2 2 2 2 2 2 ...
     $ PIA_TYPE        : chr  "6211" "6211" "6211" "6211" ...
     $ DELY_QTY_WINS   : num  75 62 57 57 67 57 53 70 70 60 ...
     $ DELY_QTY_DZTPOIS: num  1.10e-08 3.87e-05 4.49e-04 4.49e-04 2.24e-06 ...
    
    df_dztpois <- structure(list(PIA_ITEM = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 
                                                       2L, 2L, 2L, 2L), .Label = c("RX20 1.5t Type 6209-10", "RX20 1.6t Type 6211", 
                                                                                   "RX20 1.6t Type 6221", "RX20 1.8t Type 6213", "RX20 2.0t Type 6215", 
                                                                                   "RX20 2.0t Type 6225", "RX20 2.0t Type 6230"), class = "factor"), 
                                PIA_TYPE = c("6211", "6211", "6211", "6211", "6211", "6212", 
                                             "6212", "6212", "6212", "6212"), DELY_QTY_WINS = c(75, 62, 
                                                                                                57, 57, 67, 57, 53, 70, 70, 60), DELY_QTY_DZTPOIS = c(1.09669678480388e-08, 
                                                                                                                                                      3.8744657910606e-05, 0.000448728658516301, 0.000448728658516301, 
                                                                                                                                                      2.24150656988175e-06, 0.000448728658516301, 0.0023318386482722, 
                                                                                                                                                      3.38775858809732e-07, 3.38775858809732e-07, 0.000108487832825478
                                                                                                )), row.names = c(NA, 10L), class = "data.frame")
    
    library(ggplot2)
    library(dplyr)
    
    df_dztpois_summary <- df_dztpois %>%
      group_by(PIA_TYPE) %>%
      summarize(count = n(),
                mean = mean(DELY_QTY_WINS)) %>%
      mutate(lab = paste("count = ", count, "\n\U03BB = ", round(mean, digits = 2)))
    
    p <- ggplot(data = df_dztpois, aes(x=DELY_QTY_WINS))
    p <- p + geom_line(aes(y=DELY_QTY_DZTPOIS))
    p <- p + facet_wrap( ~ PIA_TYPE, nrow=3, scales = "free")
    p <- p + xlab("Observation") + ylab("Probability")
    p <- p + theme(
      legend.position = "bottom",
      legend.text = element_text(size = 12),
      strip.text.x = element_text(size = 12))
    p <- p + labs(title = "Zero-truncated Poisson distribution of order quantity",
                  subtitle = "Grouped by product (PIA_TYPE)",
                  caption = "Data source: df_dztpois$DELY_QTY_WINS and df_full$DELY_QTY_DZTPOIS")
    p <- p + geom_text(data = df_dztpois_summary, aes(label = lab), x=Inf, y=Inf, hjust=1, vjust=1.2)
    p