Exponential Error Model Missing in Nonlinear Regression Functions

3 vues (au cours des 30 derniers jours)
Rob H
Rob H le 13 Jan 2021
Neither nlinfit nor fitnlm supports the exponential error model whereas nlmefit does.
Why is this and are there plans to rectify the situation? It is very common when fitting exponentials e.g. in PK analysis to hypothesise the exponential model as is in my case. While I can obtain a superb fit for a cohort of data I also need to be able investigate indivduals one-by-one.

Réponses (1)

Krishna
Krishna le 22 Avr 2024
Hey Rob,
From my understanding, you're looking for an explanation as to why 'nlinfit' and 'fitnlm' don't support exponential error models, whereas 'nlmefit' does. The key differences among nlinfit, fitnlm, and nlmefit in MATLAB are rooted in their intended purposes and the statistical models they accommodate.
The capability of 'nlmefit' to handle exponential error models, stems from its foundational design and the specific application domains it targets. 'nlinfit' and 'fitnlm' are designed for nonlinear least squares regression, which assumes a uniform error variance throughout all predictions. This assumption falls short in various real-world applications, such as pharmacokinetic (PK) analysis, where the error in measurements tends to grow with the size of the measurement. Conversely, 'nlmefit' is crafted for nonlinear mixed-effects models, which are essential in PK/PD analysis, enabling the model to include both fixed and random effects among individuals and to accommodate more intricate error structures, like those exponential in nature. This divergence in functionality reflects the distinct requirements of the user base each function is aimed at. While 'nlinfit' and 'fitnlm' are versatile tools for numerous nonlinear fitting tasks, 'nlmefit' is designed for specific scenarios where modeling the variance in data as a function of its magnitude (or other variables) is crucial.
One workaround for this can be to write custom error models using MATLAB optimization toolbox, where we can define our own likelihood function that included an exponential error model.
Please go through the following documentation to learn more,
Hope this helps.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by