gpt4 book ai didi

r - 将匿名函数与 summary_each 或 mutate_each 一起使用

转载 作者:行者123 更新时间:2023-12-04 10:42:38 24 4
gpt4 key购买 nike

我想在对 summarize_each 的调用中使用匿名函数:

# how to use an anonymous function in dplyr
df_foo = data_frame(x = rnorm(100),
y = rnorm(100))

df_foo %>%
summarize_each(funs(function(bar) sum(bar/10)))

我将如何实现这一目标?显然,在使用之前命名函数是有效的。

最佳答案

这是使用大量括号的问题,以便对所有内容进行评估:

df_foo %>% 
summarize_each(funs(((function(bar){sum(bar/10)})(.))))
#
# Source: local data frame [1 x 2]
#
# x y
# (dbl) (dbl)
# 1 1.113599 -0.4766853

你需要的地方
  • 函数定义周围的括号,以便它被定义,
  • 一组带有 . 的括号告诉funs将传递给它的数据粘贴到哪个参数中(对于单参数函数来说似乎是多余的,但对于多参数函数来说则不然;更多示例参见 ?funs)和
  • 整个事情周围的括号来实际评估它,

  • 这有点荒谬,但这似乎是最简洁的 funs可以处理。如果您查看在自己的行上评估类似匿名函数必须编写的内容,这是有道理的,例如
    (function(bar){sum(bar/10)})(df_foo$x)

    虽然包裹整个东西的那对是额外的 funs .您可以使用大括号 {}如果您愿意,可以使用外部对,这可能更具有语法意义。

    关于r - 将匿名函数与 summary_each 或 mutate_each 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36906563/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com