试图将商作为 R 中的数字对象

Trying to get a quotient as a numeric object in R

我想知道是否有一种简单的方法可以将用户输入(例如“1/4”)转换为数字对象。

例如,我想得到如下内容:

> x <- as.numeric(readline("1/4"))
> print(x)
[1] 0.25

当然,一旦我尝试打印 x:

,我就会真正得到这个
> print(x)
[1] NA

那么,有没有什么简单的方法可以让 R 理解用户输入的是商?

此外,我对“1*10^3”或“1e3”等其他表达式也有同样的疑问。

您在寻找 eval(parse()) 吗?

x <- "1/4"
eval(parse(text=x))
## 0.25

y <- "1*10^3"
eval(parse(text=y))
## [1] 1000

z <- "1e3"
eval(parse(text=z))
## [1] 1000