【问题标题】:Creating a subset of a dataset by taking the mean values for each date in R通过取 R 中每个日期的平均值来创建数据集的子集
【发布时间】:2021-01-05 19:36:16
【问题描述】:

使用带有tidyverse插件的Rstudio,使用ggplot2进行绘图:

假设我们有一个名为 SoccerTeam 的数据集,该数据集包含变量:Location、Goals、YearPlayed 等...并且每个数据条目都分配给一场比赛,所以比赛是在 Location X 进行的,他们得分为 Y目标,它是在 19XX 年播放的。

在 YearPlayed 中,我们记录了球队活跃的所有年份,比如从 1950 年到 2020 年,并且每年都有一个完整的赛季数据。

假设 2002 年有 30 场比赛,那么就会有 30 个数据条目的 YearPlayed = 2002。

我们的目标是随着时间的推移绘制出球队进了多少球。如果我们将每年的每一场比赛都考虑在内,并将其绘制在 70 年的比赛中,我们的图表将非常混乱且难以解释。为了解决这个问题,我想采用每年的平均目标并随着时间的推移绘制它。我该怎么做?

【问题讨论】:

标签: r time-series tidyverse timeserieschart


【解决方案1】:

如果您需要对 R 中的数据整理进行一般性介绍,我推荐 R for Data Science。也就是说,您需要按 YearsPlayed 列进行分组,然后计算每年的平均值。然后,将其通过管道传输到绘图命令中。 %>% 符号将左侧的输出发送到右侧。因此,您可以像这样将它们链接在一起:

SoccerTeam %>% 
  group_by(YearPlayed) %>%
  summarize(Goals = mean(Goals)) %>%
  ggplot(aes(x=YearPlayed, y=Goals) +
  geom_line()

【讨论】:

  • 虽然此代码 sn-p 可能是解决方案,但 including an explanation 确实有助于提高您的帖子质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 1970-01-01
  • 2020-11-27
  • 2019-10-02
  • 1970-01-01
  • 1970-01-01
  • 2018-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多