Estimate pdf of image of a uniform distribution keeping the same number of points
Show older comments
I have a initial vector
, which is transformed in another vector w with the same length via a transformation which I would like to estimate the probability density function of. Moreover, i can assume that
and
. I would also like the estimated pdf to have the same length N as v and w. I found that a good way to do this might be using the function ksdensity (correct me if I am mistaken), but I do not know how to specify that my vector w comes initially from a uniform distribution and to specify that I want the pdf to be estimated in the points
, so that it will be a vector of length N.
7 Comments
Torsten
on 8 Dec 2024
Can you write down the transformation as an explicit function ?
T.C.
on 8 Dec 2024
T.C.
on 8 Dec 2024
Image Analyst
on 8 Dec 2024
Walter Roberson
on 8 Dec 2024
T.C.
on 8 Dec 2024
T.C.
on 8 Dec 2024
Answers (2)
Torsten
on 8 Dec 2024
Moved: Image Analyst
on 8 Dec 2024
I'd first try what you get as the usual empirical probability density using something like
v = linspace(0,1,1000);
w = v.^2;
histogram(w,'Normalization','pdf')
A histogram seems quite useful but doesn't easily give the N pdf values that the OP wants.
If the transformation is monotonic, then you already have the cdf:
v = linspace(0,1,1000);
w = sqrt(v);
plot(w,v) % cdf of w
Knowing the length of each little w(k) to w(k+1) interval, it seems like you can work out the pdf in that interval (e.g., assuming it is flat) with something like this. That gives you one less than the number of pdfs you want, so you probably need to make an assumption about what is going on at one end or the other.
histogram(w,'Normalization','pdf')
cdfjumps = w(2:end) - w(1:(end-1));
mids = (w(2:end) + w(1:(end-1))) / 2;
pdfs = 0.001 ./ cdfjumps;
hold on
plot(mids,pdfs)
12 Comments
Image Analyst
on 8 Dec 2024
Can you explain a use case for requiring the PDF to have the same number of elements as the data it describes? I can't see how that requirement would be necessary.
T.C.
on 8 Dec 2024
Image Analyst
on 8 Dec 2024
OK, so they shoudl be the same, and aligned with each other. But it doesn't need to have the same number of data points as your input data. For example you could have a million data points, from dozens of different data sets, and you could have PDF bins from 0-100 every 0.1 units, so like 1000 bins in the histogram. You can specify 'Edges' for the bins to make sure all the histograms from different data sets are aligned.
Jeff Miller
on 8 Dec 2024
Edited: Jeff Miller
on 8 Dec 2024
Maybe it is appropriate in your situation, but it is unusual to average pdf functions to look at the average predictions of a model under various parameter settings. To illustrate with an extreme example, suppose the model predicts uniform(0,1) with one set of parameters and uniform(1,2) with another set. When you average the pdfs you get an average pdf that is essentially a uniform(0,2), but this has twice the range of what the model actually ever predicts.
Instead, it is more usual to compute the quantiles of the model under each set of parameters and then average across parameter sets at each quantile. This is sometimes called Vincentizing and would be easy in your case. For the above example, the average quantiles would correspond to a uniform(0.5, 1.5) distribution.
Could you explain in more detail the background of your problem ? Especially the context in which you get multiple pdf's. Do you want to consider the different resulting pdf's for a target variable if you assume different distributions for certain model parameters ? Thus a kind of sensitivity analysis under uncertainty ?
T.C.
on 9 Dec 2024
Image Analyst
on 9 Dec 2024
What I'd do is to process all your images and get the particle sizes from all the images, then construct the histogram after that.
T.C.
on 9 Dec 2024
Walter Roberson
on 9 Dec 2024
It depends. Are all the gas particles the same size (to within the extent that size matters for your purposes) ?
T.C.
on 11 Dec 2024
Jeff Miller
on 11 Dec 2024
If you want to know the final distribution after advection, why not just construct the histogram of the particle positions after advection, as @Image Analyst suggested 9 Dec at 13:08 (I too think he meant positions instead of sizes)? As long as the starting positions are always the same (i.e., uniform), I don't see why you need to adjust the average post-advection positions for their initial distribution.
Categories
Find more on Noncentral t Distribution 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!

