tidyr にバグが見つかったようです。
私はこのようなコードを持っています
rm(hello)
a <- function() {
dt <- data.table(`*stat*` = c("mean","max"), time = c(11, 12), val1 = c(1,2), val2 =c(3,4))
hello <- "^(time)$"
dt2 <- dt %>% gather(dimension, value, -matches("\\*stat\\*"), -matches(hello))
}
a()
しかし
dt <- data.table(`*stat*` = c("mean","max"), time = c(11, 12), val1 = c(1,2), val2 =c(3,4))
hello <- "^(time)$"
dt2 <- dt %>% gather(dimension, value, -matches("\\*stat\\*"), -matches(hello))
動作します。
唯一の違いは、一方のコード セットは関数内にあり、もう一方は関数内にないことです!