我正在使用包Ryacas的deriv函數。 輸出是一個表達式。 我想使用表達式的一部分作爲一個函數,所以我可以試試它的值。R中的類表達式使用它中的元素
下面是示例
s <- expression(2*y*x + 2*y -1*x^2-2*y^2);
a<-deriv(s,c("x","y"));
輸出是
expression({
.expr1 <- 2 * y
.expr10 <- 2 * x
.value <- .expr1 * x + .expr1 - 1 * x^2 - 2 * y^2
.grad <- array(0, c(length(.value), 2L), list(NULL, c("x",
"y")))
.grad[, "x"] <- .expr1 - .expr10
.grad[, "y"] <- .expr10 + 2 - 2 * .expr1
attr(.value, "gradient") <- .grad
.value
我想用.grad [中, 「x」]。 做到這一點的唯一方法是等處理表達式作爲列表
a[[1]][6]
但輸出中是一流的呼叫。
(.grad[, "x"] <- .expr1 - .expr10)()
任何幫助?這個想法是採取這種輸出,並將其轉換爲函數,以便我可以傳遞不同的值
謝謝!
在的問題是不使用Ryacas即使Ryacas是因爲'x'加載,並在所有的例子'y'沒有被定義爲Ryacas符號。它在R中使用'deriv'函數。試試'demo(「Ryacas-Function」)'作爲一個例子來說明如何與Ryacas合作。另請嘗試'vignette(「Ryacas」)'獲取更多信息。 – 2014-10-22 11:18:09
謝謝!對不起,提交這個錯誤 – donpresente 2014-10-22 13:08:39