Skip to content

[R-es] Como puedo calcular un maximo de alguna funcion?

2 messages · Manuel Arriaza Guiñez, Carlos J. Gil Bellosta

#
Hola, ¿qué tal?

Podríais hacer algo así como:

f <- "20*x*(1-x)^3"

find.max <- function( foo, min, max ){
   foo <- parse( text = foo )
   df <- D( foo, "x" )
   ddf <- D( df, "x" )

   dfoo <- function( x ) eval( df )
   ddfoo <- function( x ) eval( ddf )

   ceros <- uniroot.all( dfoo, c(min, max) )
   ceros <- ceros[ ddfoo( ceros ) < 0 ]
   ceros
}

Le faltan cosas, como la comprobación de errores, etc., pero contiene
las ideas principales sobre cómo manipular los elementos básicos del
lenguaje.

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalytics.com

El día 18 de septiembre de 2009 02:18, Manuel Arriaza Guiñez
<manu3_16 en hotmail.com> escribió: