如何将用户输入存储为向量(对于特定范围,例如 c(-10:1)?

How can I store user-input as a vector (for a certain range e.g. c(-10:1)?

我是 R 的新手。我想制作一个程序,请求控制台输入,然后做一些事情,包括制作图表。现在我希望用户指定图形的 x 值。然后我想用一个范围来做到这一点,例如 c(-10:10).

当我使用 readline() 函数时,我只得到一个字符串值。

myvector <- readline("Give the range for x-values") ### results in string value
c(-10:10)
myvector

我得到 "c(-10:10)",但这不是我想要的。 如何从用户输入中获取向量 (c(-10:10)? 或者如何将此字符串转换为向量?

提前致谢!

您正在捕获一个字符向量,因此您需要 parse 它并 eval 像这样对其进行运算。另请注意,xlim 的参数是一个范围。

res <-eval(parse(text=myvector))
plot(-20:20,xlim=range(res))