can reliefF() function deal with NaNs in my matrix?
1 view (last 30 days)
Show older comments
Hello,
I have an (n*m double) matrix, where n (rows) is the number of my samples and m (columns) is the number of my features, which are all discrete (i.e. categorical). The mth column in the data represents my binary outcome. I have tried using relieff() function to return the importance of my predictor features based on my outcome feature.
This is what my data looks like (let's say for simplicity's sake: I have 4 predictor and 1 outcome feature for 3 samples):
matrixdata = [1, 2, 3, NaN, 2; 5, 1, NaN, 2, 1; NaN, 3, NaN, 2, 1];
This is how I call the relieff() on my data:
X = matrixdata(:,1:(end-1));
Ylogical = matrixdata(:,end)== 1;
[ranked,weights] = relieff(X,Ylogical,10, 'categoricalx', 'on');
In this case, does relieff() disregard the NaNs in the data or does it treat NaNs as a separate category of that predictor feature column? Obviously, the former is what I would prefer.
Many thanks, Berkan
0 Comments
Accepted Answer
Wayne King
on 4 Mar 2012
Hi Berkan, relieff() removes NaNs in both your predictor and response variables. So your preference is the way it is implemented.
More Answers (1)
See Also
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!