sorting the values of a vector into a new one by its elements size

2 次查看(过去 30 天)
Hey all
I made some measurements. Between these values, I interpolated. Now, I want to merge both vectors into one but withouth changing the order. Just copy in the new interpolated values into the intervalls of the measured values.
Is there a predefined function from matlab or do I have to write it myself?
Thanks in advance
  2 个评论
MagJ_
MagJ_ 2018-11-29
Alright, sorry:
Say I have a vector
x=[1,5,7,9]
Now, I interpolated between these values and I get a new vector with
y=[0.5,1.5,2,2.5,3,3.5,4...]
and some more values which I left away for now. I don't know wether this is real linear interpolation. I should think about it but it did not matter atm.
Well, now I want to merge both vectors like this:
xnew=[0.5,1,1.5,2,2.5,3,3.5,4...,5,7,9]
Values shall get sorted into the vector by it's values basically.
I hope you understand my problem now. I fear that it is very simple but I don't see it yet.

请先登录,再进行评论。

采纳的回答

Luna
Luna 2018-11-29
Try this,
xnew = sort(horzcat(y,x)) % concatane vectors then sort all
%% OR
xnew = horzcat(sort(y),sort(x)) % sort x, sort y seperately then concatanate
  3 个评论

请先登录,再进行评论。

更多回答(1 个)

madhan ravi
madhan ravi 2018-11-29
编辑:madhan ravi 2018-11-29
Simple and easy solution:
xnew=sort([x y])

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by