0
范围定义变量我有下面的代码片段使用分配的功能
library(magrittr)
test_fun <- function(x) {
foo <- x %>%
assign("boo", .)
boo
}
test_fun("hello") # I want this to return "hello"
# Error in test_fun("hello") : object 'boo' not found
我希望能够在功能范围值赋给名称。有没有办法做到这一点?
编辑:
管道背后的原因,这里要说的是,在我的实际使用情况下,我想保存,可以在管道被称为稍后一些中间结果。换一种方式,而不是写例如
foo1 <- data %>% ...
foo2 <- foo1 %>% ...
foo3 <- some manipulation with foo1 and foo2
我可以这样做
foo <- data %>% ... %>% (assign to foo2) %>% ... %>% some manipulation with foo2
我的印象是,这将是一个“干净”的方式代码,但很高兴地获悉,否则,如果它不是好的做法。
您对'%>%'的使用在这里有点混乱。我不确定你是否在'dplyr'-sense('data.frame')或更直接的'magrittr'意义上使用它。无论如何,尽管这确实是一个简单的例子,但它将有助于提供一些背景信息,例如,是否正在对/使用'x'(和/或其他要求)进行其他操作。否则,'{boo < - x;嘘; }'符合你的严格需求(我推断这不是你所需要的)。 – r2evans
请发布所有'library()'行。 – Parfait
@ r2evans感谢您的反馈 – kevinykuo