【发布时间】:2023-03-08 18:29:02
【问题描述】:
我想在 apply 中使用 dplyr 函数,用于矩阵 (BRCK) 的每个元素,这是一个数据帧矩阵。 我尝试过这样的事情:
apply(BRCK, c(1,2), function(x) dplyr::select(x, dplyr::contains("_01_"), 1) %>%
dplyr::filter((month(`BRCK[[la, lo]]`) == 1)) %>%
dplyr::select(-contains("BRCK"))
但它会返回
Error: Variable context not set
还有回溯:
13. stop(cnd)
12. abort("Variable context not set")
11. cur_vars_env$selected %||% abort("Variable context not set")
10. current_vars()
9. tolower(vars)
8. dplyr::contains("_01_")
7. select.list(x, dplyr::contains("_01_"), 1)
6. dplyr::select(x, dplyr::contains("_01_"), 1)
5. eval(lhs, parent, parent)
4. eval(lhs, parent, parent)
3. dplyr::select(x, dplyr::contains("_01_"), 1) %>% dplyr::filter(x,
(month(`BRCK[[la, lo]]`) == 1)) %>% dplyr::select(x, -contains("BRCK"))
2. FUN(newX[, i], ...)
1. apply(BRCK, c(1, 2), function(x) dplyr::select(x, dplyr::contains("_01_"), 1) %>% dplyr::filter(x, (month(`BRCK[[la, lo]]`) == 1)) %>%
dplyr::select(x, -contains("BRCK")))
BRCK 是一个非常大的对象,它适用于循环,但我试图用应用函数替换它们。
【问题讨论】:
-
使用管道或写出第一个参数,而不是两者
-
好的,已更改,但同样的错误仍然存在。
-
我们什么时候可以将 data.frames 存储在矩阵中?
-
为什么不呢?如果这是我不知道的问题