MATLAB: Very confused about MLE

mleobservationstrials

Matlab has the MLE tool : mle(data,pdf)
I have a custom distribution :pdfM
I have generated data the following way: [size of data, trials]
For example data(1,100) means for each trial I pick 1 data randomly from this distribution and
data(500,100) means I pick 500 data points in 'each' trial so its a matrix of data points x number of trials
But mle(data, pdf) isn't working. I read that instead I have to provide a vector for the data. So this is confusing!
Does it mean for the case of data(500,100), I have to do this
for j=1:trials %=100
mle(data(500,j),pdfM,'start',some number here)
end
And the next question is when I run the above code and get parameter of interest, I will have N sets of the same parameter where N=number of trials. Should I be using that to calculate standard deviation and confidence intervals? Thanks

Best Answer

Let's step back to the big conceptual picture. The mle function is estimating the most likely parameters for a distribution of sample data. One distribution. That sample distribution is contained in a vector -- not a matrix.
So, yes, you estimate one set of parameters from one vector of data (one sample distribution).
If you have 100 trials (and therefore 100 distributions) then a loop like the one you wrote would come up with 100 set of MLE parameters, yes.
I don't know if that's what you want, but you can do that.