1
R의 수식 수정에 대한 질문이 있습니다.R 수식의 문자열 바꾸기
수식이 있다고 가정 해 보겠습니다. 나는 인용 부호 제외에 용어를 대체하려는 경우
> fo <- a ~ b + c
나는
> pryr::substitute_q(fo, list(a = as.name('happy')))
happy ~ b + c
지금은 이름으로의 대체 할 수 있습니다, substitute_q
> pryr::substitute_q(fo, list(a = 'happy'))
"happy" ~ b + c
를 사용하여 용어를 대체 할 수 있습니다 그러나, 나는 문자열이있는 수식이 있다고 말할 수 있습니다.
> fo <- 'a' ~ b + c
> fo
"a" ~ b + c
수식에서 문자열을 대체 할 수있는 방법을 찾을 수 없습니다.
> pryr::substitute_q(fo, list(a = as.name('happy')))
"a" ~ b + c
> pryr::substitute_q(fo, list("a" = as.name('happy')))
"a" ~ b + c
> pryr::substitute_q(fo, list(`"a"` = as.name('happy')))
"a" ~ b + c
> pryr::substitute_q(fo, list('"a"' = as.name('happy')))
"a" ~ b + c
나는 항상 이름 공식 내를 교체하려고 즉, 대체를 수행 할 때 substitute_q
는 환경 내에서 변수를 찾기 때문이라고 생각합니다. 문자 'a'를 대체 할 수있는 방법이 있습니까? 기본 R에서
에 강요
deparse
를 사용합니다. 'func1 (a, b) ~ func2 ("e", 10) + b * c + func3 (d)''reformulate'은 부족합니다. 이런 복잡한 경우에 적응할 수 있습니까? –