我正在尝试使用
dplyr
语法更改数据帧中一部分列的类型,其中这些列由包含我想要操作的列名的字符向量来识别。由于我同时处理多列,所以我使用across()
。由于我传递了一个外部名称向量,因此我使用all_of()
。但是,当我实际执行此操作时,我会得到以下错误。
下面是一个复现错误的示例。Error:
mutate()
输入..2
存在问题。 x 输入..2
必须是向量,而不是原始函数。 i 输入..2
为as.character
。
library(dplyr)
# Create example data
df <- data.frame(x = rnorm(10),
y = rnorm(10))
cols_to_convert <- c("x","y")
df %>% mutate(across(all_of(cols_to_convert)),
as.character)
)
关闭得太早了。应该是df %>% mutate(across(all_of(cols_to_convert), as.character))
。 - akrun)
是括号,]
是方括号,}
是花括号。重新校准我的假设是很好的事情 :-) - r2evans