[R-es] Ajuste a una función arbitraria

Carlos Ortega cof en qualityexcellence.es
Mar Jun 21 18:32:42 CEST 2016


Hola,

Para cada uno de los temas que planteas:

A) Ajuste de ecuación.

   - Puedes utilizar un ajuste no-lineal.
   - Utiliza el paquete *nlstools*.
   - En la propia ayuda de "nlstools" verás que incluso puedes incluir una
   restricción sobre el valor de tu D* y de que b>300.
      - Aunque puedes utilizar la misma estrategia que comentas de hacer
      una primera iteración sin D* y con el resultado, volver a correr otra
      iteración incluyendo la restricción de D* > 4*D.
   - En todo momento estoy suponiendo que para cada valor de "b" tienes un
   valor de S(b)/S(0). Vaya que tienes las "x" y las "y".

B) Maximizar función.

   - En este caso, hay una función en R "optim()" que permite
   maximizar/minimizar sobre un intervalo para tu variable.
   - Incluso eligiendo el método de optimización adecuado, puedes
   establecer restricciones sobre relaciones entre variables.
   - Antes de decirte esto, he probado si había alguna forma de encontrar
   una expresión analítica para dejar "T1" como variable dependiente
   (Mathematica no la ha podido encontrar... :-)).


Gracias,
Carlos Ortega
www.qualityexcellence.es

El 21 de junio de 2016, 17:18, Félix Navarro Guirado <
felix.navarro.sspa en juntadeandalucia.es> escribió:

>
>
> Estimados gurús de R, mi nombre es Félix Navarro y escribo desde el
> hospital regional de Málaga para hacer una consulta sobre R.
>
> Me
> gustaría saber como solucionaríais un problema con R porque nuestra
> decisión no tiene demasiado argumento más allá de que parece que
> funciona.
> Os comento:
> Estamos haciendo una herramienta para hacer unas
> medidas con la resonancia magnética y facilitarle los resultados a los
> radiólogos como ayuda a sus diagnósticos.
> Lo que hacemos es adquirir
> repetidas veces imágenes de los pacientes cambiando determinados
> parámetros de la exploración y luego, píxel a píxel, hacemos un ajuste
> de esos valores a una función. En esta función el valor del píxel en las
> imágenes de cada adquisición depende del tejido y ese parámetro
> modificado. Alguno de los coeficientes ajustados es el valor que
> buscamos y el que se usará para el diagnóstico.
> Cada vez que repetimos
> la exploración para tener una muestra más de la función a ajustar
> conlleva tener al paciente algún minuto más dentro de la resonancia y, a
> la larga, tener que reducir el número de pacientes/mes a los que damos
> servicio. Entenderéis que ajustar con las mínimas exploraciones posibles
> controlando la incertidumbre es crítico para nosotros.
> Ninguno de
> nosotros es un experto en este tema del ajuste y elegí la función glm de
> R exclusivamente porque permitía fijar límites y valores máximo y mínimo
> para los parámetros que buscamos. De esta forma podemos garantizar que,
> al menos, el resultado sea razonable pues muchas de las muestras además
> vienen contaminadas con ruido o artefactos de la exploración.
> Os
> muestro dos ejemplos y ¿me diríais como lo haríais?
>
> Una de las
> funciones a ajustar es S(b)/S(0) = (1-f)·e^(-b·D)+f·e^(-b·D*) con 6
> muestras b=0, 15, 65, 300, 685 y 1000. Esta se ajusta primero para
> b>=300 despreciando el sumando con D* y, en una segunda iteración, se
> obtiene D* con todos los valores de b (conocidos de la la primera
> iteración D y f). Esto se hace porque sabemos que D* >= 4·D y ese
> exponente decaerá mucho antes.
> Otra de las funciones es esta [1] de
> abajo, donde lo que se busca es T1 y se va variando alfa (todo lo demás
> excepto k[H] es conocido, pero k[H] que carece de interés médico por
> ahora)
>
> Esta función sabemos que tiene un máximo y exploramos con un
> par de valores de alfa antes y otro par después de donde suponemos que
> estará el máximo (pues alguna idea de por donde anda T1 tenemos en
> función de la zona explorada).
> ¿Cómo lo haríais vosotros? Ya os digo
> que usamos glm sin demasiado argumento más allá del práctico.
> Muchas
> gracias por el tiempo.
>
> --
> Félix Navarro
> Guirado
> felix.navarro.sspa en juntadeandalucia.es
> Radiofísica
> hospitalaria.
> H.R.U. de Málaga.
> TLF: 951291436
> Av Carlos Haya S/N
> 290010
> Málaga
>
>
> Links:
> ------
> [1]
> http://mriquestions.com/uploads/3/4/5/7/34572113/7502602.png?348
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>



-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es