r - 将 n() 与 summarise_all 一起使用
问题描述
工作正常:
stats = c('mean', 'median', 'sd', 'max', 'min')
sumtable = iris %>% select(-Species) %>% summarise_all(.funs = stats)
不起作用:
stats = c('mean', 'median', 'sd', 'max', 'min', 'n')
sumtable = iris %>% select(-Species) %>% summarise_all(.funs = stats)
Error in summarise_impl(.data, dots) : `n()` does not take arguments
请指教。
解决方案
我想要这个功能是因为我想计算非缺失的观察结果。正如 Rohit 指出的那样,长度会计算所有行,包括丢失的 obs。所以我最后做的是这样的:
not.na = function(x) {sum(!is.na(x))}
stats = c('mean', 'median', 'sd', 'max', 'min', 'not.na')
sum.acs = acs %>% group_by(year) %>% summarise_all(.funs = stats)
推荐阅读
- python - Pandas:X 天分组的平均值
- ruby-on-rails - Rails 6 - Pundit “策略包装器”
- java - 错误:(7, 22) java: ')' 执行我的代码时预期
- ansible - 如何读取文件变量来为角色制作全局栏?
- python - 当我使用networkx.draw绘制网络时,python2和python3使用同一个程序,但是python2无法正确绘制
- r - 如何在 flextable save_as_image 例程中显示特殊字符
- python - 从内存中完全删除暗网网络
- java - 从主包运行方法时泽西岛测试失败 - > NullPointerException at target(...)
- swift - 在 xcode 问题中上传 SVG 图像
- sql - 如何为至少一次具有付费来源的所有 user_ids 获取结果 1