在 tidyr::pivot_wider 中,`values_fn = sum(.,na.rm=TRUE)` 失败

别处

在 tidyr::pivot_wider, values_fn = sum(.,na.rm=TRUE)failed ,如何处理?

library(tidyverse)
test_data <- data.frame(
  category=c('A','A','A','B','B','B'),
  sub_category=c('a','b','b','a','b','b'),
  amount=1:6
)

test_data %>% pivot_wider(names_from ='category',
                          values_from ='amount' ,
                          values_fn = sum(.,na.rm=TRUE)) 
安迪·巴克斯特

您可以使其成为处理此问题的函数:

library(tidyverse)
test_data <- data.frame(
  category=c('A','A','A','B','B','B'),
  sub_category=c('a','b','b','a','b','b'),
  amount=1:6
)

test_data %>% pivot_wider(names_from ='category',
                          values_from ='amount' ,
                          values_fn = function(x) sum(x, na.rm = TRUE))

#> # A tibble: 2 x 3
#>   sub_category     A     B
#>   <chr>        <int> <int>
#> 1 a                1     4
#> 2 b                5    11

生成匿名函数 ( \(x)) 的新语法也适用:

test_data %>% pivot_wider(names_from ='category',
                          values_from ='amount' ,
                          values_fn = \(x) sum(x, na.rm = TRUE))

#> # A tibble: 2 x 3
#>   sub_category     A     B
#>   <chr>        <int> <int>
#> 1 a                1     4
#> 2 b                5    11

reprex 包于 2022-03-25 创建(v2.0.1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 R 中使用 pivot_wider() 对 values_fn 执行聚合(例如 sum、mean)时出错

保留 tidyr::pivot_wider() 输出中的所有列

tidyr :: pivot_wider中的values_fill参数不起作用

将变量传递到tidyr :: pivot_wider的names_glue参数中

NA's 通过使用 pivot_wider

在dplyr中为每个函数保存na.rm = TRUE

在pivot_wider()中设置名称顺序

Pandas 中的 pivot_wider 是什么?

tidyr:: spread() 的替代代码,我的代码与 tidyr::pivot_wider()

tidyr :: spread tidyr :: pivot_wider每个键具有多个不同的值

mean(,na.rm = TRUE)仍返回NA

tidyr :: gather na.rm缺少数据

pivot_wider() 为以前的完整数据生成 NA

为什么在使用pivot_wider时会产生NA值?

為什麼 NA 是從 pivot_wider 產生的?

dplyr :: mutate(分配na.rm = TRUE)

尝试在tidyr :: pivot_wider中使用names_glue时,为什么会出现错误?

當某些鍵具有多個值時使用 tidyr::pivot_wider

Tidyr:pivot_wider错误:无法将<double>转换为<list>

如何在 R 中多次执行 pivot_wider?

R删除我需要的变量中的pivot_wider

在 tidyverse 中重塑表格,pivot_wider 的问题

colMeans(x,na.rm = TRUE)中的错误:“ x”在KNN分类中必须是数字

Tapply(var, y, mean, na.rm = TRUE) 中的错误:参数必须具有相同的长度

为什么na.rm = TRUE对于R中的加权SD不起作用?

如何在R胶合语法中设置“ na.rm = TRUE”

我如何在 R 中按 ID 分组并用 na.rm = TRUE 进行平均汇总

将na.rm = TRUE与mutate中的函数一起使用

主成分分析:colMeans(x,na.rm = TRUE)中的错误:'x'必须为数字