使用 dplyr 按多组进行汇总

2023-11-29

我正在尝试使用 dplyr 来总结基于 2 个组的数据集:“年份”和“区域”。数据集如下所示:

  Year   Area Num
1 2000 Area 1  99
2 2001 Area 3  85
3 2000 Area 1  60
4 2003 Area 2  90
5 2002 Area 1  40
6 2002 Area 3  30
7 2004 Area 4  10
...

最终结果应该是这样的:

  Year    Area Mean
1 2000 Area 1  100
2 2000 Area 2   80
3 2000 Area 3   89
4 2001 Area 1   80
5 2001 Area 2   85
6 2001 Area 3   59
7 2002 Area 1   90
8 2002 Area 2   88
... 

请原谅“平均值”的值,它们是编造的。

示例数据集的代码:

df <- structure(list(
   Year = c(2000, 2001, 2000, 2003, 2002, 2002, 2004), 
   Area = structure(c(1L, 3L, 1L, 2L, 1L, 3L, 4L), 
   .Label = c("Area 1", "Area 2", "Area 3", "Area 4"), 
   class = "factor"), 
   Num = structure(c(7L, 5L, 4L, 6L, 3L, 2L, 1L), 
   .Label = c("10", "30", "40", "60", "85", "90", "99"), 
   class = "factor")), 
   .Names = c("Year", "Area", "Num"), 
   class = "data.frame", row.names = c(NA, -7L))

df$Num <- as.numeric(df$Num)

我尝试过的事情:

df.meanYear <- df %>%
  group_by(Year) %>%
  group_by(Area) %>%
  summarize_each(funs(mean(Num)))

但它只是用平均值替换每个值,而不是预期的结果。

如果可能,请提供替代方法(即非 dplyr)方法,因为我对 R 还是新手。


这是你想要的?

 library(dplyr)
 df <- group_by(df, Year, Area)
 df <- summarise(df, avg = mean(Num))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 dplyr 按多组进行汇总 的相关文章

  • Shiny:动态数据框构建; renderUI、观察、reactiveValues

    我认为如何使用 Shiny 的 renderUI 功能动态子集数据的问题经常出现 但我很难理解何时使用 renderUI 带有 uiOutput 而不是其他功能 包括观察 反应 反应值甚至条件面板 我想构建一个完全交互式的数据框架 其中每个
  • 如何使用 tidymodels 和工作流集在同一数据集上拟合多个不同的线性模型

    我想评估同一数据集上多个 主要是 线性回归模型的性能 我想也许使用tidymodels包连同workflowsets workflow set 可能会起作用 我按照这个例子here https workflowsets tidymodels
  • 无法更改 RStudio 中的 R 版本

    我的 RStudio V 0 99 491 无法更改 R 版本 我以平常的方式行事Global Options gt R Version 然后它挂起并且不再工作或反应 R 运行良好的初始版本是R 3 1 0 我以前从未遇到过这样的问题 也许
  • 闪亮应用程序中的本地图像没有 img(src())?

    我想按照以下说明在我的闪亮应用程序中包含本地图像文件 在闪亮的应用程序中嵌入图像 https stackoverflow com questions 21996887 embedding image in shiny app 然而 由于某种
  • 删除字符串中的转义符,或者“我怎样才能让 \ 不碍事?”

    转义字符在 R 中会带来很多麻烦 前面的问题证明了这一点 更改列中的值 https stackoverflow com questions 10046357 change the values in a column 10046412 10
  • 在 R 中打印具有长字符串的数据帧

    让我们有一列包含长字符串的数据框 df lt data frame short rnorm 10 0 1 long replicate 10 paste rep sample letters runif 1 5 8 collapse 如何打
  • 以给定的纵横比保存绘图

    我正在使用非常棒的库 ggplot2 我想出了如何使用设置绘图的纵横比coord fixed 现在 我想将绘图保存为具有指定宽度 例如 10 厘米 的 PDF 并计算所需的高度 我不知道如何实现这一目标 这可能吗 您可以使用网格函数来计算
  • 将数字提高到非整数幂时出现奇怪的 NaN [重复]

    这个问题在这里已经有答案了 我执行了以下代码 tau lt 0 25 h lt 0 6 n 1 5 4 5 dnorm qnorm tau 4 qnorm tau 2 qnorm tau 2 1 2 1 5 R 继续生产NaN 然而 R 实
  • R:大向量的高效迭代子集和过滤

    我想更快地执行以下操作 Logic 我有一个向量big共 4 个元素1 2 3 4 我还有一个相同长度的阈值向量1 1 3 1 4 1 5 1 我希望每个元素找到第一个元素的索引next元素高于相应的阈值 在这种情况下 我的预期输出是 2
  • R闪亮数据表在开始时不显示记录(行)

    我正在构建一个带有数据表的闪亮应用程序 我想要的是启动时不显示任何记录 行 这样您只能看到表格顶部的过滤器 当您开始输入时 会显示行 我在数据表中找不到选项 这可能吗 下面是示例代码 shinyApp ui navbarPage title
  • 如何处理“不符合”的数组?

    如何对两个数组进行逐元素算术运算 在第一维度中一致 但也有一个额外的维度 示例 乘法数组a 3 x 3 x 2 按数组b 3 x 3 a lt array 1 18 dim c 3 3 2 b lt diag 3 由于数组不一致 因此以下操
  • 在 R 中进行 Cox 回归后,将预测危险比列添加到数据帧中

    在 R 中运行 Cox PH 回归后 我需要在数据框中添加预测风险比的列 数据框是面板数据 其中 numgvkey 如果公司标识符 和年龄是时间标识符 您可以从此链接下载一小部分日期 https drive google com file
  • 可以明确声明包依赖项的版本吗?

    我倾向于对我编写的代码进行明确而不是隐含的描述 因此 在成功创建自己的包之后 我立即想到的下一件事是如何最好地确保代码的健壮性和可靠性 其中一部分与我的包所依赖的包有关 实际问题 在这方面 是否可以明确声明需要 期望哪个版本的包依赖项 我正
  • 如果“testthat”测试在“R”中失败,则打印自定义诊断信息

    I use a testthat单元测试来检查是否data frame函数返回的结果与我期望它返回的结果相同 如果测试失败 testthat打印一些诊断信息 例如 MyFunction df orig is not identical to
  • 从网络源获取 R 中的数据作为数据框

    我正在尝试使用 RCurl 包将一些空气污染背景数据作为 data frame 直接加载到 R 中 该网站有 3 个下拉框 用于在下载 csv 文件之前选择选项 如下图所示 我试图从下拉框中选择 3 个值 并使用 下载 CSV 按钮将数据作
  • 如何调整ggplot直方图的时间刻度轴

    我正在使用一个数据框 其中一列包含POSIXct日期时间值 我正在尝试使用绘制这些时间戳的直方图ggplot2但我有两个问题 我不知道如何设置 binwidthgeom histogram 我想将每个垃圾箱设置为一天或一周 我尝试提供 di
  • 用于清除工作空间和转储存储的 R 全局函数

    我希望创建一个全局函数来清除我的工作区并转储我的内存 我将我的函数称为 cleaner 并希望它执行以下代码 remove list ls gc 我尝试在全局环境中创建该函数 但是当我运行它时 控制台仅打印该函数的文本 在我要获取的函数文件
  • 分离并重新附加“tools:rstudio”

    又名玩火 以下不起作用 rstd obj lt as environment tools rstudio detach tools rstudio attach rstd obj name tools rstudio 好吧 它似乎有效 但随
  • 在函数内部调用 clusterApply 时,性能会下降

    我遇到了一个奇怪的问题clusterApply 我已经能够尽可能地隔离它 如下所示 首先 我从全局环境运行以下代码 require parallel cl lt makeCluster rep localhost 20 SOCK xl lt
  • R:将 readRDS 应用于 .Rds 文件名的列表对象

    我有几个包含数据帧对象的 Rds 文件 我想对每个文件应用一个函数并将数据帧绑定到单个数据帧中 但是 当我尝试从文件名列表中读取多个 Rds 文件时 我收到错误 FUN X i 中的错误 从连接读取时出错 readRDS 不适用于列表吗 R

随机推荐

  • 如何从文件中删除单个属性(例如只读)?

    假设一个文件具有以下属性 ReadOnly Hidden Archived System 如何只删除一个属性 例如只读 如果我使用以下内容 它将删除所有属性 IO File SetAttributes File txt IO FileAtt
  • 如何从 Java 中的自定义谓词列表创建谓词?

    我对编程比较陌生 过去两天我一直想知道如何创建一个由其他谓词的自定义列表组成的谓词 所以我想出了某种解决方案 下面是一个代码片段 应该可以给您一个想法 因为我只是根据阅读各种文档来编写它 所以我有两个问题 1 这是一个好的解决方案吗 2 对
  • 最大化 R Shiny bs4Dash 中的绘图

    我在网上到处查了一下没有结果 我似乎无法让这些图在最大化盒子时将其高度和宽度最大化到整个窗口大小 这是我使用的要求bs4Dash 我在看这个帖子但提供的解决方案似乎对我不起作用 我缺少什么 library shiny library bs4
  • 使用犰狳和 hdf5 库的简单代码的 C++ 构建错误

    我对 C 和犰狳很陌生 并且遇到了下面描述的构建错误 我正在尝试测试以下简单代码以将犰狳矩阵保存为 hdf5 文件 include
  • 如何获取 Highcharts 树图中钻取事件的当前级别?

    似乎在 Highcharts Treemap 中没有触发下钻事件 我需要执行一些任务 例如在向下钻取和向上钻取事件上显示当前级别编号的警报 如何在树状图中完成此操作 我看到此时您可以捕获重绘事件并准备一个简单的 解析器 来检查ID 第一级的
  • Bash 子 shell 与 ssh 命令的行为非常奇怪

    考虑脚本 s2 bin bash ssh localhost tail 和脚本 s1 bin bash s2 sleep 1000 wait 现在呼叫 s1 它不会调用 ssh 命令 如果你删除 s1 中的 它就会 如果你直接调用 s2 就
  • 如何为 Intellij 编译器提供更多堆空间?

    当我制作 Intellij 项目时 我不断收到以下内存不足错误 我已经增加了堆大小idea vmoptions Xms128m Xmx2048m XX MaxPermSize 1024m XX ReservedCodeCacheSize 6
  • 使用 RSelenium 在 Chrome 中启用 Adblocker 扩展

    我正在从这个页面抓取 R 中的数据 显示弹出广告 这些广告会干扰脚本 因此我想启用广告拦截器扩展 https chrome google com webstore detail adblock gighmmpiobklfepjocnamgk
  • 如何根据用户或电子邮件过滤仪表板内容?

    我正在尝试在 Google Data Studio 上构建一个仪表板 该仪表板会根据访问仪表板的用户 使用其 Google 帐户凭据 自动过滤数据 以下是一些细节 因此 这个仪表板应该为员工显示一些汇总数据 但我们希望限制可见性并实施一些访
  • (无意中)在迭代列表时跳过项目

    我有一个列表 我想从中删除其他列表中未出现的项目 我尝试过以下方法 for w in common for i in range 1 n if not w in words i common remove w 但是 这无法删除某些项目 添加
  • 如何以编程方式使用 Google Analytics API 函数获取指标和维度列表?

    我正在尝试使用 Google Analytics API 需要通过 Google Analytics API 获取指标和维度列表 如何在 php 中使用 Google Analytics API 函数获取指标和维度列表 这无法通过 API
  • 团队构建:使用 MSDeploy 本地发布

    我刚刚开始使用团队构建功能 我发现做一些非常简单的事情所需的大量事情有点令人不知所措 我目前的设置是一个包含 Web 应用程序 组装应用程序和测试应用程序的解决方案 Web 应用程序设置了一个通过文件系统发布的 PublishProfile
  • Magento:将商品添加到购物车时如何更改商品价格

    当我将商品添加到购物车时 我希望能够以编程方式 而不是通过目录或购物车规则 更改商品价格 以下回答以编程方式将产品添加到购物车并更改价格展示了如何在更新购物车时执行此操作 而不是在添加产品时执行此操作 Thanks 您可以使用观察者类来监听
  • 使用 TypeScript 的 React 组件中的默认属性值

    我不知道如何使用 Typescript 为我的组件设置默认属性值 这是源代码 class PageState export class PageProps foo string bar export class PageComponent
  • hibernate加载对象图的正确方法是什么

    假设我有 3 个表 GrandCat Cat 和 Kitt 它们具有一对多的关系 所以我有以下课程 所有关联都是延迟加载 GrandCat int age Set
  • 在 MFC 中添加加速器(快捷方式) - 如何?

    我找到了这个链接 http support microsoft com kb 222829 但我无法理解那么多 好的 我知道我需要将其添加到我的头文件中 HACCEL m hAccelTable 然后是这个 m hAccelTable Lo
  • LaunchDaemons 和环境变量

    一段时间以来 我注意到我的 MacPorts 安装的 Apache2 实例在我启动时尚未启动 MacPorts Apache2 在启动时停止启动 LaunchDaemon 已加载 今天我在日志文件中发现了一些可能指向答案的内容 但我找不到任
  • 启用项目功能时启用 Rust nightly 功能

    在库箱中 我想按需提供回溯并使用 Rust 夜间回溯功能 为了做到这一点 Rust 需要设置 feature backtrace 在我的板条箱根部 有没有办法表达仅当设置了创建级别功能 backtrace 时 我才需要 Rust 夜间功能
  • 使用 Excel 中的 VBA 将 2 个单元格的内容合并到另一个第 3 个单元格中

    我有两个单元格 A1 和 A2 其中每一个的内容都是一个字符串 A1 你好 A2 世界 我的目标是将 A1 和 A2 的内容合并到另一个单元格中 例如A3即A3的内容应该是 你好世界 我想使用 VBA 宏来执行此操作 而不仅仅是将字符串作为
  • 使用 dplyr 按多组进行汇总

    我正在尝试使用 dplyr 来总结基于 2 个组的数据集 年份 和 区域 数据集如下所示 Year Area Num 1 2000 Area 1 99 2 2001 Area 3 85 3 2000 Area 1 60 4 2003 Are