【发布时间】:2019-11-05 15:27:21
【问题描述】:
我想写一个函数来记录一个小标题中所有列的日志:
test<-tibble(date=c("1992-01-01","1992-01-02"),
value1=c(1,2),
value2=c(3,4))
对我来说困难在于我想将对数变量附加为新列,并且变量名称应具有以下形式:例如:value_l。在 dplyr 中,mutate_all 应该可以做到这一点,但似乎不可能在那里添加向量。
test %>%
select(-"date") %>%
mutate_at(funs(!!paste0(colnames(test)[2],"_l") := log(.)))
我的代码给了我:
Error: The LHS of `:=` must be a string or a symbol
Call `rlang::last_error()` to see a backtrace.
有没有办法绕过这个并同时留在 dplyr 世界中?
test<-tibble(date=c("1992-01-01","1992-01-02"),
value1=c(1,2),
value2=c(3,4),
value1_l=log(c(1,2)),
value2_l=log(c(3,4)))
【问题讨论】: