2017-11-03 3 views
2

Ich möchte den Derivatwert von der Funktion unten erhalten, wenn x = 2 ist. Gibt es Möglichkeit, die Form der Funktion zu behalten und auch Derivatwert ohne irgendein zusätzliches Paket zu erhalten?Wie kann ich Derivativwert in R bekommen?

Zum Beispiel habe ich unten versucht, aber sie haben nicht funktioniert.

x=2 
deriv(~f, "x") 

x=2 
deriv(~body(f),"x") 

x=2 
D(expression(f),"x") 
+1

Sind Sie fragen, wie die Ableitung von 'x^3' (_i.e._' 3x auszudrücken^2') und dann das für 'x = 2' auswerten? – neilfws

+1

Sie könnten das [Deriv-Paket] (https://cran.r-project.org/web/packages/Deriv/Deriv.pdf) verwenden, das numerische Ableitungen zu unterstützen scheint. –

Antwort

1

Dies wäre Annäherung

foo = function(x, delta = 1e-5, n = 3){ 
    x = seq(from = x - delta, to = x + delta, length.out = max(2, n)) 
    y = x^3 
    mean(diff(y)/diff(x)) 
} 

foo(2) 
#[1] 12 
+0

Was ist die "length.out = max (2, n)" für? – user8878064