Как мне построить функцию, отформатированную как строку в R

Я создаю приложение с помощью RApache, и мой код на R получает данные POST. Один из пост-данных - это POST$f, представляющий собой строку, скажем "sin(x)". Есть ли способ успешно вставить это в функцию сюжета?

Спасибо!

1 ответ

fun <- "sin(x)"
plot(function(x) eval(parse(text=fun)))

Но это не то, что я бы порекомендовал. eval(parse(...)) это уже опасно, и тогда делать это с произвольным пользовательским вводом с веб-сайта - просто зияющая дыра в безопасности.

# PLOTTING THIS FUNCTION AS ABOVE WILL DELETE EVERYTHING IN YOUR GLOBAL WORKSPACE
fun <- "{rm(list=ls(pos=1),pos=1); x}"
# DON'T SAY I DIDN'T WARN YOU!

Или даже используя system() делать еще больше плохих вещей.

Другие вопросы по тегам