更改向量中特定值的位置

Kya*_*dro 5 r vector

我确信有人已经以其他方式问过这个问题,但我找不到它。

我想更改向量中特定值的位置。在下面的示例中,我将“第八”放在位置 4 中。

vector<-c("one","two","three","four","five","six","seven","eight","nine","ten")
vector
# [1] "one"   "two"   "three" "four"  "five"  "six"   "seven" "eight" "nine"  "ten" 

vector<-vector[c(1:3,8,4:7,9:10)]
vector
# [1] "one"   "two"   "three" "eight" "four"  "five"  "six"   "seven" "nine"  "ten"  
Run Code Online (Sandbox Code Playgroud)

当操作频繁进行时,就会变得很累。我想以一种非常高效和优雅的方式来做到这一点。

相关帖子的回复提供了一个有用的功能,可以重新排列数据框中的列顺序,但一般不适用于向量。对于向量来说,这样的东西会非常好:

arrange.vect(vector, c("eigth"=4))
# [1] "one"   "two"   "three" "eight" "four"  "five"  "six"   "seven" "nine"  "ten"  
Run Code Online (Sandbox Code Playgroud)

是否有任何函数可以在某处执行此操作,或者有任何想法可以非常轻松地执行此操作?

GKi*_*GKi 5

您可以使用append 更改向量中特定值的位置

append(vector[-8], vector[8], 3)
# [1] "one"   "two"   "three" "eight" "four"  "five"  "six"   "seven" "nine"  "ten"  
Run Code Online (Sandbox Code Playgroud)