bootstrap confidence intervals on MDS data?
10 views (last 30 days)
Show older comments
Hi,
So I've used mdscale to analyze a dataset and have a two-dimensional solution that makes sense. I would now like to calculate and plot confidence ellipses around the coordinates.
Some reading shows that the bootstrp function might be useful for doing this, but I don't understand how I would use mdscale as the target function (i.e. the 'bootfun') to bootstrp.
If anyone has experience with this and can provide an example it would be much appreciated.
Thanks,
-Jim Ferwerda
0 Comments
Answers (1)
Jeff Miller
on 30 Jan 2019
I'm guessing that you have some starting dataset, D1, and that your code sequence looks something like this:
DforMDS = someFunctionOf(D1);
Y = mdscale(DforMDS,2);
(if this is not what you are doing, then I don't see how you have anything to bootstrap)
Based on that guess, I think you would probably be better off using datasample, something like this:
Y = cell(NBootstrapSamples,1);
for iBoot=1:NBootstrapSamples
oneSample = datasample(D1,N); % N is the number of independent samples in D1, though I'm not too clear
% how datasample works if D1 is multidimensional (e.g., Nx5 array with
% 5 measurements on each sample).
thisDforMDS = someFunctionOf(oneSample);
Y{iBoot} = mdscale(thisDforMDS,2);
end
At the end of this Y will contain all the mdscale outputs for the different bootstrap samples, which you will have to process in some way (beyond my knowledge, but probably involving mean x, mean y, and corr_xy for each point) to get confidence ellipses.
Good luck. :)
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!