作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我几乎每天都使用 tidyverse(及其环境),有时我不得不回到以前的/旧的分析。不幸的是,跟踪对包所做的更改并不容易。
这个脚本非常实用,它执行我想要的(它在函数内部与其他命令一起使用)
ds <- data.frame(result = rnorm(100,5,2),
time = c("1","2"))
library(tidyverse)
library(broom)
ds %>%
summarise_at(vars("result"),
funs(list(tidy(t.test(. ~ time, paired=TRUE))))) %>% map(1)
我知道这不是最优雅的语法。现在,此消息出现在命令之后:
funs() 从 dplyr 0.8.0 开始被软弃用请使用函数或 lambda 的列表:
# Simple named list:
list(mean = mean, median = median)
# Auto named with `tibble::lst()`:
tibble::lst(mean, median)
# Using lambdas
list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
我所有修复它的尝试都给了我一个信息...
> ds %>%
+ summarise_at(vars("result"),
+ lst(tidy(t.test(. ~ time, paired=TRUE)))) %>% map(1)
Error in model.frame.default(formula = . ~ time) :
invalid type (list) for variable '.'
> ds %>%
+ summarise_at(vars("result"),
+ list(list(tidy(t.test(. ~ time, paired=TRUE))))) %>% map(1)
Error in model.frame.default(formula = . ~ time) :
invalid type (list) for variable '.'
> ds %>%
+ summarise_at(vars("result"),
+ list(list(tidy(~ t.test(. ~ time, paired=TRUE))))) %>% map(1)
Error: No tidy method for objects of class formula
所以..第一个问题:有什么关于修复它的线索吗?
第二:我可以在哪里关注这些(持续)更新?
三:我使用tidyverse是因为我喜欢它处理命令的方式。它非常直观,但我认为这是一个重要的副作用,它不断变化......我是否应该尝试将我的所有例程移至 R base(可能 R base 不会改变其功能......)?
谢谢大家。
最佳答案
这个怎么样?
ds <- data.frame(result = rnorm(100,5,2),
time = c("1","2"))
library(tidyverse)
library(broom)
ds %>%
summarise_at(vars("result"),
list(~ list(tidy(t.test(. ~ time, paired=TRUE))))) %>% map(1)
#> $result
#> # A tibble: 1 x 8
#> estimate statistic p.value parameter conf.low conf.high method
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 -0.719 -1.77 0.0823 49 -1.53 0.0955 Paire~
#> # ... with 1 more variable: alternative <chr>
由 reprex package 创建于 2019-09-04 (v0.3.0)
关于r - Tidyverse 命令已弃用 : T test inside a summarise , 然后报告所有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57796011/
我是一名优秀的程序员,十分优秀!