Removing specific elements from vector
Show older comments
I have an exponentially distributed vector "F" with "M" values. I need to remove "K" amount of values from "F" starting from the smallest values and I also need the vectors "a" and "a_d" that gives the values of "F" and "F_d" in descending order, respectively.
Everything works fine with my code, but I want "F_d" to be vector with "N" values, instead it gives me "M" values and on the "K" positions that I want to remove it puts Zeros. I know I can just remove the Zeros, but how can I make it work properly?
M=32;
K=1;
N=M-K;
F=exprnd(1,1,M);
[a, index] = sort(F,'descend');
a_d=a(1:end-K);
F_d(index(1:N))=a_d;
Accepted Answer
More Answers (0)
Categories
Find more on Shifting and Sorting Matrices 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!