R mutate_at():必须是1d原子向量或列表

R mutate_at():必须是1d原子向量或列表,r,dplyr,R,Dplyr,我有以下数据 df <- tibble(a = rnorm(10,0,1), b = a+6, c = b/2) df %>% mutate_at(vars(a, b), scale) %>% GGally::ggpairs() 通过mutate_at()更改变量后,如何使用df?例如,我如何将GGally::ggcoef用于缩放数据?函数向向量添加额外属性,以便以后可以取消缩放向量。但这似乎欺骗了ggpairs,使其不认为这是一个数值向量。您可以制作自己的包装器来清理额外的

我有以下数据

df <- tibble(a = rnorm(10,0,1), b = a+6, c = b/2)
df %>% mutate_at(vars(a, b), scale) %>% GGally::ggpairs()
通过
mutate_at()
更改变量后,如何使用
df
?例如,我如何将
GGally::ggcoef
用于缩放数据?

函数向向量添加额外属性,以便以后可以取消缩放向量。但这似乎欺骗了ggpairs,使其不认为这是一个数值向量。您可以制作自己的包装器来清理额外的属性

simple_scale <- function(...) as.numeric(scale(...))
simple_scale <- function(...) as.numeric(scale(...))
df %>% mutate_at(vars(a, b), simple_scale) %>% GGally::ggpairs()