Handling missing observations while using fmincon
Afficher commentaires plus anciens
Hello,
I have data that consists of 70 variables that I observe for 100,000 observations but I don't observe a few of those 70 variables for some random observations and MATLAB codes them as NaN. I'm using fmincon to find the minimum of a function with 70 parameters. My function is of the form f(
). When I run the algorithm, I notice that MATLAB does not compute the index function
when there is a missing value for one of the k variables for some observation i. How should I handle such missing observations?
). When I run the algorithm, I notice that MATLAB does not compute the index function
when there is a missing value for one of the k variables for some observation i. How should I handle such missing observations?Thank you in advance,
Selcen
Réponses (2)
Walter Roberson
le 13 Nov 2024
Use this kind of structure:
XY = [X, Y];
XY = rmmissing(XY);
Xm = XY(:,1:end-1);
Ym = XY(:,end);
objfun = @(PARAMS) sum((YourFunction(PARAMS,Xm)-Ym).^2);
bestPARAMS = fmincon(objfun, PARAMS0);
Matt J
le 13 Nov 2024
They should be zeros rather than NaNs, shouldn't they? With zeros, they will make no contribution to the linear part of the prediction.
X(isnan(X))=0;
Catégories
En savoir plus sur Descriptive Statistics dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!