在R函数中从文本文件导入方程式

问题描述

我正在尝试将.txt文件中的方程式加载到R函数中。这些方程很长,但为简单起见,我的test.txt文件仅包含+ b。

equation <- function(a,b) {
data <- read.delim("test.txt",header = F,col.names="equation",strip.white=F)
return (data$equation) 
}

equation(1,1)

我尝试了上面的代码,其结果应为2(1 + 1),但数据已作为因子加载,因此无法破解如何将其解析为属性

解决方法

使用eval(parse())

equation <- function(a,b) {
    data <- readr::read_file("test.txt")
    return( eval(parse(text = data) ))
}
equation(4,5)
[1] 9
,

使用readLines

eq <- function(a,b) eval(parse(text=readLines("equ.txt")))
eq(1,1)
# [1] 2