vector of truncated distributions

2 views (last 30 days)
Hello, I would like to create a vector x such that
pd = makedist('Normal');
x(1)=truncate(pd,-inf,y(1));
x(2)=truncate(pd,-inf,y(2));
...
x(K)=truncate(pd,-inf,y(K));
I want to call this vector in CDF evaluations as follows
cdfeval=zeros(N,1)
for n=1:N
for k=1:K
if id(n)==id1(k)
cdfeval(n)=cdf(x(k),pi_point(n,:));
end
end
end
Is there any easy way to do this?

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 18 Aug 2019
Edited: KALYAN ACHARJYA on 18 Aug 2019
Save this function in separate Matlab file named x_vector.m
function x1=x_vector()
pd = makedist('Normal');
x1(1)=truncate(pd,-inf,y(1));
x1(2)=truncate(pd,-inf,y(2));
...
x1(K)=truncate(pd,-inf,y(K));
end
Now call the function in main script:
cdfeval=zeros(N,1)
x=x_vector();
for n=1:N
for k=1:K
if id(n)==id1(k)
cdfeval(n)=cdf(x(k),pi_point(n,:));
end
end
end

More Answers (1)

george pepper
george pepper on 18 Aug 2019
Thank you!

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!