2017-02-05 7 views
1

おやすみなさい。私は関数がポイントで最小値を持っているかどうかをチェックしようとしています。"R"の "language"を "numeric"に変換する方法は?

そのために私は派生物とヘッセ行列を使用します。

派生型は「言語」型で格納されていますが、私はそれらを「数値型」で必要としています。例えば

、私は

der_x1 <- D(expression(3 + 2 * x_1 + 3 * x_2 + 2 * (x_1)^2 + 2 * x_1 * x_2 + 6 * (x_2)^2), "x_1") 
der_x1x1 <- D(der_x1, "x_1") 

を使用し、der_x1x1 = 2 * 2を取得します。

typeof(der_x1x1) "language"を返します。

しかし、ヘッセ行列の行列式を見つけるには、2 * 24を簡略化してnumberに変換する必要があります。

私はas.numeric(der_x1x1)をしようとすると、私はError: 'pairlist' object cannot be coerced to type 'double'

+0

を。 – alistaire

答えて

1

は、次のコードを試してください取得:eval` `で包み

eval(der_x1x1) 
x_1 <- 1 
x_2 <- 1 
eval(der_x1) 
+0

大変ありがとう、Siyu Sun、まさに私が必要とするものです。 – Eichhorn

関連する問題