2016-06-19 9 views
-1

特定のプロパティに基づいて関数を返す関数を作成しました。 問題は、返されたオブジェクトを文字列にする「貼り付け」を使用しなければならないことです。ここで返されたオブジェクトの例:私は機能として、それを使用可能にするオブジェクト「the_problem」を操作したいR:文字列の内容を関数本体に変換する

the_problem <- "beta['v_p'] * 0.1 * ((3.99 * exp(-0.144 * time)) + 
       (4.78 * exp(-0.0111 * time))) + 0.1 * beta['ktrans_1'] * (3.99 * (exp(- 
    beta['kep_1']* time) - exp(- 0.144 * time)) * (0.144 - 
    beta['kep_1'])**(-1) + (4.78 * (exp(- beta['kep_1'] * time)- exp(- 
    0.0111 * time)) * (0.0111 - beta['kep_1'])**(-1)))" 

。何かのように:

dcemri_func <- function(beta){ 
    return(get.rid.of.string(the_problem))} 

私はすでに "as.function"を試しましたが、これは動作しません。 アイデア

おかげで、最高のwhishes、

クリス

+2

を '体(dcemri_func)< - パース(テキスト= the_problem)'? – rawr

答えて

2

あなたはすなわち、eval(parse(text = ..))を使用して試みることができる:

the_problem <- paste0('function(beta) ', the_problem) 
dcemri_func <- eval(parse(text = the_problem)) 
+0

それは私が探していたものです!ありがとう! –

+0

あなたのメモをありがとう!問題が解決した場合は、投票の横にあるチェックマークをクリックして解決策を受け入れることを検討してください。 – Nutle

関連する問題