除非我使用怪异的语法,否则为什么要忽略trim参数? [英] Why is mean ignoring trim parameter unless I use weird syntax?

查看:58
本文介绍了除非我使用怪异的语法,否则为什么要忽略trim参数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试在降低高值和低值后计算均值.但是以下内容忽略了trim参数:

I'm trying to compute mean after dropping high and low values. But the following ignores the trim parameter:

library(tidyverse)
mtcars %>% 
  summarize(mpg = mean(mpg),
            mpg_trimmed = mean(mpg, trim = 0.05))
#>        mpg mpg_trimmed
#> 1 20.09062    20.09062

但是以下方法可行:

library(tidyverse)
mtcars %>% 
  summarize(mpg = mean(.$mpg),
            mpg_trimmed = mean(.$mpg, trim = 0.05))
#>        mpg mpg_trimmed
#> 1 20.09062    19.95333

为什么需要使用.$ ?

推荐答案

因为您要掩盖原始的 mpg 变量(在函数范围内创建另一个变量).输入其他名称,例如 mpg_mean .请记住,dplyr可以立即访问新创建的变量.

Because you are masking the original mpg variable (creating another in the scope of the function). Give a different name like mpg_mean. Remember that dplyr makes newly created variables immediately accessible.

library(dplyr)

mtcars %>% 
  summarize(mpg_mean = mean(mpg),
            mpg_trimmed = mean(mpg, trim = 0.05))
#>   mpg_mean mpg_trimmed
#> 1 20.09062    19.95333

这篇关于除非我使用怪异的语法,否则为什么要忽略trim参数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆