dplyr:将所有列发送到 group_by 之后的 mutate 内的函数

2024-02-10

在 dplyr 管道中调用任意函数时,将当前组中的所有列作为 tibble 或 data.frame 发送到函数的首选方法是什么?

在下面的例子中,mean_B是一个简单的例子,我知道在调用函数之前需要什么。mean_B_fun给出了错误的答案(与我想要的相比——我想要组内的平均值),并且mean_B_fun_ugly给出了我想要的,但这似乎是一种低效(而且丑陋)的方式来获得我想要的效果。

我想对任意列进行操作的原因是在实践中,我正在采取my_fun在下面的示例中,我不知道用户需要先验操作的列。

library(dplyr)

my_fun <- function(x) mean(x$B)

my_data <-
  expand.grid(A=1:3, B=1:2) %>%
  mutate(B=A*B) %>%
  group_by(A) %>%
  mutate(mean_B=mean(B),
         mean_B_fun=my_fun(.),
         mean_B_fun_ugly=my_fun(as.data.frame(.)[.$A == unique(A),,drop=FALSE]))

这是我的答案,不知道要计算平均值的列。

expand.grid(A=1:3, B=1:2) %>%
mutate(B=A*B) %>% nest(-A)  %>%
mutate(means = map(.$data, function(x) colMeans(x)))

  A data means
1 1 1, 2   1.5
2 2 2, 4     3
3 3 3, 6   4.5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dplyr:将所有列发送到 group_by 之后的 mutate 内的函数 的相关文章

  • 如何在 R 或 Python 中制作旭日图?

    到目前为止 我一直无法找到一个可以创建旭日图的 R 库约翰 斯塔斯科 http www cc gatech edu gvu ii sunburst 有人知道如何在 R 或 Python 中实现这一点吗 在极坐标投影中使用 matplotli
  • ggplot2:如何标记事件发生的日期

    我想从第二个情节中获取第一个情节的信息 第二张图表示事件发生的天数 它看起来更宽 因为它没有图例 但它是相同的时间尺度 我选择在第一个图中手动分配颜色 I would like to overlay the second plot dots
  • 如何使用 SparkR 1.6.0 写入 JDBC 源?

    使用 SparkR 1 6 0 我可以使用以下代码从 JDBC 源读取数据 jdbc url lt jdbc mysql localhost 3306 dashboard user
  • R“错误:“}”中出现意外的“}”[重复]

    这个问题在这里已经有答案了 我有一个字符串变量 对于缺少数据的情况 它具有 空值 我想将 空值 重新编码为缺失 而不是说 空值 我正在尝试编写一个循环来删除这些 空值 条目 但我不断收到错误 错误 中出现意外的 for row in dat
  • 如何在将两根柱子保持在一起的同时熔化柱子?

    我有这种宽格式的数据 我想将其转换为长格式 Cond Construct Line Plant Tube shoot weight shoot Tube root weight root 1 Standard NA NA 2 199 95
  • 使用 template.docx 从 Shiny App 编织 Word 文档

    我正在尝试使用 template docx 文件从闪亮的应用程序编写一个 Word 文档 我收到以下错误消息 pandoc exe template docx openBinaryFile 不存在 没有这样的文件或目录 以下 3 个文件当前
  • 如何修复 R 中 Kaplan Meier 图的风险表计算错误

    以下是一个数据帧 其中 6 个参与者中的每一个都有唯一的 record ID 我想绘制一个生存分析图 其中包含感兴趣事件的复发以及在时间间隔 tstart 到 tstop 内 暴露 药物剂量 数值变量 的时间依赖性协变量 每个参与者的最大
  • 从 csv 文件中读取奇数行

    这看起来相当简单 我只需要从 R 中的数据文件中读取奇数行并创建一个新的数据框 我怎样才能实现这个目标 read csv filename csv c TRUE FALSE 怎么运行的 功能read csv用于读取整个文件并返回包含所有行的
  • 调用 tidyselect-using 函数时指定点参数,无需指定前面的参数

    这是我在包中使用的函数的简化版本 论证和tidyselect选择变量 this toy function just selects the variables foo lt function dat mtcars expr lt rlang
  • 在 R 中打印具有长字符串的数据帧

    让我们有一列包含长字符串的数据框 df lt data frame short rnorm 10 0 1 long replicate 10 paste rep sample letters runif 1 5 8 collapse 如何打
  • rvest如何通过id选择特定的css节点

    我正在尝试使用 rvest 包从网页中抓取数据 简单来说 html 代码如下所示 div class style div
  • Rstudio 中的 Sweave — pdf 中没有显示任何图

    这里是 Sweave Latex 新手 我在生成常规函数输出时没有问题 但绘图没有显示 这是一个基本示例 documentclass article begin document SweaveOpts concordance TRUE lt
  • 如何处理“不符合”的数组?

    如何对两个数组进行逐元素算术运算 在第一维度中一致 但也有一个额外的维度 示例 乘法数组a 3 x 3 x 2 按数组b 3 x 3 a lt array 1 18 dim c 3 3 2 b lt diag 3 由于数组不一致 因此以下操
  • 有没有办法在 RStudio 中调试 RScript 调用?

    假设我从命令行运行 R 脚本 如下所示 Rscript prog R x y z 我想检查某一行的代码 目前 我无法在 RStudio 中以交互方式调试它 因为我不知道如何传递参数 由于它设计为从命令行运行 因此如何通过命令行 RStudi
  • 可以明确声明包依赖项的版本吗?

    我倾向于对我编写的代码进行明确而不是隐含的描述 因此 在成功创建自己的包之后 我立即想到的下一件事是如何最好地确保代码的健壮性和可靠性 其中一部分与我的包所依赖的包有关 实际问题 在这方面 是否可以明确声明需要 期望哪个版本的包依赖项 我正
  • 从网络源获取 R 中的数据作为数据框

    我正在尝试使用 RCurl 包将一些空气污染背景数据作为 data frame 直接加载到 R 中 该网站有 3 个下拉框 用于在下载 csv 文件之前选择选项 如下图所示 我试图从下拉框中选择 3 个值 并使用 下载 CSV 按钮将数据作
  • 指定 R 中 hist() 中的 bin 数量?

    我尝试指定垃圾箱的数量hist R为10 如下 gt hist x breaks 10 但垃圾箱的数量并不完全是 10 我尝试了几个其他数量的垃圾箱 结果发生了同样的情况 hist says breaks可以指定 给出直方图单元格数量的单个
  • 如何生成向量的所有组合[重复]

    这个问题在这里已经有答案了 假设我有 3 个绿球 2 个橙球和 8 个黄球 我想订购它们 鉴于所有相同颜色的球都是相同的 如何生成所有可能的序列 在 R 中 使用gregmisc 我可以 balls lt c orange orange g
  • 将summary()写入as.data.frame以在ggplot / R中使用

    请查找 af 数据样本t below 我正在使用以下方法进行竞争风险分析etmCIF来自etm package 产生以下结果 这很好 但需要更好的图形 曾经有一个ggtrans etm函数将数据导入ggplot 然而 这个功能显然被删除了
  • R read_excel:libxls 错误:无法解析文件

    我试图使用 readxl read excel 将 xls 文件读入 R 但它给出了以下错误 Error filepath data xls libxls error Unable to parse file 还尝试了 readxl exc

随机推荐

  • Hibernate/JPA 中批量插入 CollectionTable 元素

    我们使用 Hibernate 4 2 作为 JPA 2 0 实体的支持库 我们有一个如下所示的实体 Entity public class MyEntity ElementCollection MapKeyColumn name key C
  • 为什么我的交易没有升级为 DTC?

    我的机器上禁用了 DTC 据我了解 这段代码应该失败 因为它在同一事务中使用两个数据上下文 那么 它为什么有效呢 注意 我使用 NET 3 5 和 NET 4 0 尝试过此操作 using TransactionScope transact
  • Python lxml解析svg文件

    我正在尝试解析 svg 文件http kanjivg tagaini net http kanjivg tagaini net 但我无法成功提取里面的信息 Edit 1 完整文件 http www filedropper com 0f9ab
  • IBM data studio 未连接到本地 DB2 数据库

    我已经在本地 Ubuntu 12 04 机器上安装了 DB2 10 5 版本 现在我需要一个图形用户界面 我已经尝试过 squirrel sql 和 Db Visualizer Db Visualizer 为我提供了仅查看的数据库结构 而
  • 一个项目有两个 gitlab-ci 运行程序

    我曾经在github上有一个项目travis https travis ci org and an appveyor https www appveyor com 已配置集成服务 因此我能够确保我的项目在两个平台上都可以正常编译OSX an
  • 使用协程API获取实体

    最好的使用方法是什么coroutines使用 LiveData 从数据库中选择一些数据Room 这是 My Dao 课程 暂停选择 Dao interface UserDao Query SELECT from user table WHE
  • 如何使用 --split-debug-info=/<项目名称>/<目录>

    下面的命令中 如何使用 split debug info
  • C++ 对齐的未来:按值传递?

    阅读 Eigen 库文档 我注意到有些对象不能按值传递 http eigen tuxfamily org dox TopicPassingByValue html C 11 中是否有任何开发或计划开发可以安全地按值传递此类对象 另外 为什么
  • SharedPreferences 保存一个按钮,单击它后将其更改为不可见,并让另一个按钮出现

    我是新来的 我是法国人 所以也许我的英语不是很好 对此感到抱歉 我是 Android 开发的初学者 我必须创建一个应用程序来完成我的学习 我有一个名为 VoeuxActivity java 的活动编号 1 有 8 个按钮 和 8 个 Tex
  • Actionscript 3 和动态蒙版

    我有一个容器 MovieClip 用作我需要遮盖的内容区域 当我使用形状在此容器内创建蒙版时 我似乎无法与我在此处创建的其他容器的内容进行交互 例如按钮等 这就是我在代码中所做的 我省略了所有导入等 class MyContainer ex
  • C++ 中不同字符串类型的优缺点

    很抱歉在 SO 上开始另一个无法回答的问题 但我只是好奇 C 中所有不同字符串类型的优缺点 我的具体问题是 MFC 的 CStrings 和 std string 之间的问题 因为我只做 Windows 软件 但这将扩展到 C 中的任何字符
  • 使用 Swift 4 解析 JSON 数据数组

    我正在使用以下代码 仅当 JSON 数据不以 字符开头时 它才有效 它适用于以 字符开头的 JSON 数据 这里有一个类似的问题 快速解析 JSON 数组 https stackoverflow com questions 26840203
  • 如何访问mapGroupsWithState中的stateSnapshot或在流之间共享GroupState?

    通过 DStream API 可以使用以下命令访问有状态流的快照状态MapWithStateDStream stateSnapshots http spark apache org docs latest api scala index h
  • 无法远程调试 IIS - w3wp.exe 呈灰色显示

    我正在尝试使用远程调试来调试 IIS Web 服务 由于我们的域配置 我们无法更改 当通过 默认 选项进行远程调试时 我收到 访问被拒绝 的消息 我找到的唯一解决方案是切换到 VS 2008 中的远程 仅本机 无需身份验证 选项 问题是 当
  • JavaScript 中的插值

    我有这个jQuery http en wikipedia org wiki JQuery code selector html a href url text a where url and text是 JavaScript 变量 我将如何
  • 如何使 Visual Studio 2015 C++ 项目与 Visual Studio 2010 兼容?

    我的老师被学校安排使用 Visual Studio 2010 因为他们不想费心安装任何新东西 我一直在使用 Visual Studio 2015 并且非常喜欢它 然而 当她尝试运行任何代码时 都会产生一堆错误 我尝试了一种通过编辑解决方案文
  • 在创建新的 Android 文件项目后,我在 Eclipse 中没有原始文件夹。我能做些什么?

    抱歉 我是一名初学者程序员 我现在只学习 Android Java 特定语言 我有一本书 我想学习 但是当我制作新项目时没有原始文件夹 我怎样才能做到呢 还是我之前删除了 我不知道 因为我只是尝试发现 Eclipse IDE 并且我犯了一些
  • 如何保留嵌入的制表符

    EDIT 2019 Oct 11 Simple example 删除了前面的示例 I want awk尊重一个TAB嵌入的字符 0当它重新处理时作为内容 0字段值更改后的输入记录 1 2 这是一个简短的例子 在下面的输出中 t 48 例如
  • RshinyDashboard自定义框状态颜色

    我想自定义闪亮应用程序的框状态颜色 我找到了一种 css 方法来更改这些框的框背景颜色 但不自定义状态颜色 但我在 css 中没有看到 status 的等效参数 因此 我打印了一个简单页面的源代码 其中包含所考虑的参数 status 并且我
  • dplyr:将所有列发送到 group_by 之后的 mutate 内的函数

    在 dplyr 管道中调用任意函数时 将当前组中的所有列作为 tibble 或 data frame 发送到函数的首选方法是什么 在下面的例子中 mean B是一个简单的例子 我知道在调用函数之前需要什么 mean B fun给出了错误的答