按预定顺序对矢量进行排序

van*_*lli 4 sorting r vector

我有一个长度为10的向量x,我想根据向量y(1:10)中的值的顺序进行排序.说:

x <- c(188,43,56,3,67,89,12,33,123,345)
y <- c(3,4,5,7,6,9,8,2,1,10) 
Run Code Online (Sandbox Code Playgroud)

向量y将始终由1到10之间的数字组成,但顺序不同.我想将x中的最低值与1匹配,将最高值与10匹配,以便输出类似于

x_new <-(33,43,56,67,89,123,188,12,3,345)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?我感谢任何输入!

And*_*rie 6

sort(x)[y]
 [1]  33  43  56  89  67 188 123  12   3 345
Run Code Online (Sandbox Code Playgroud)