귀하의 예가 단순하기 때문에 귀하의 문제를 올바르게 이해하지 못했을 수 있습니다. 내 이해에 따르면 문자 벡터에 일련의 명령어가 저장되어 있으며 해당 명령어는 올바른 멤버를 숫자로 캐스트하려는 것을 제외하고는 적절한 형식에 매우 가깝습니다.
내 이해가 옳다면 원래 문자열을 분할하는 데 의존하지 않고 지침을 직접 평가하는 약간 다른 접근 방식을 제안하고 싶습니다 (약간 개선됨).
original_string <- "variable_name=\"10\"" # Your original instruction, but with an actual numeric on the right, stored as character.
library(magrittr) # Or library(tidyverse), but it seems a bit overkilled if the point is just to import pipe-stream operator
eval(parse(text=paste(eval(original_string), "%>% as.numeric")))
print(variable_name)
#[1] 10
기본적으로, 우리가하고있는 것은 우리가 당신의 명령 '개선'이다 variable_name="10"
가되고 그래서 variable_name="10" %>% as.numeric
동등한이다, variable_name=as.numeric("10")
와 magrittr
파이프 스트림 구문을. 그런 다음 현재 환경 내에서이 표현을 평가합니다.
8 년 후 이곳을 돌아 다니는 누군가를 돕는 희망 ;-)