我正在尝试使用 mutate 和 rowwise 返回一个列表,但得到代码中显示的错误。这些问题Q1 Q2有所帮助,但我想通过使用 迭代行来保持简单rowwise()
,这些问题已经 3 年 7 个月了。谢谢。
library(tidyverse)
df <- data.frame(Name=c("a","a","b","b","c"),X=c(1,2,3,4,5), Y=c(2,3,4,2,2))
TestFn <- function(X,Y){
Z <- list(X*5,Y/2,X+Y,X*2+5*Y)
return (Z)
}
#this works
SingleResult <- TestFn(5,20)
#error - Error in mutate_impl(.data, dots) : incompatible size (4), expecting 1 (the group size) or 1
dfResult <- df %>%
rowwise() %>%
mutate(R=TestFn(X,Y))